dhpgemrdhs92092 1.250727.11714 → 1.250728.10943
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +418 -380
- package/package.json +1 -1
package/index.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
/*! [dist-pg-services.js]; ===WEBPACK BUILD: 1.25.
|
1
|
+
/*! [dist-pg-services.js]; ===WEBPACK BUILD: 1.25.0728.0943=== */
|
2
2
|
(() => {
|
3
3
|
var e = {
|
4
4
|
4466: (e, n, t) => {
|
@@ -1024,9 +1024,9 @@
|
|
1024
1024
|
|
1025
1025
|
function h() {}
|
1026
1026
|
|
1027
|
-
function f() {}
|
1028
|
-
|
1029
1027
|
function q() {}
|
1028
|
+
|
1029
|
+
function f() {}
|
1030
1030
|
var _ = {};
|
1031
1031
|
b(_, c, (function() {
|
1032
1032
|
return this
|
@@ -1034,7 +1034,7 @@
|
|
1034
1034
|
var W = Object.getPrototypeOf,
|
1035
1035
|
L = W && W(W(x([])));
|
1036
1036
|
L && L !== a && p.call(L, c) && (_ = L);
|
1037
|
-
var g =
|
1037
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
1038
1038
|
|
1039
1039
|
function y(e) {
|
1040
1040
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -1159,17 +1159,17 @@
|
|
1159
1159
|
}
|
1160
1160
|
throw new TypeError(n(t) + " is not iterable")
|
1161
1161
|
}
|
1162
|
-
return
|
1163
|
-
value: q,
|
1164
|
-
configurable: !0
|
1165
|
-
}), r(q, "constructor", {
|
1162
|
+
return q.prototype = f, r(g, "constructor", {
|
1166
1163
|
value: f,
|
1167
1164
|
configurable: !0
|
1168
|
-
}), f
|
1165
|
+
}), r(f, "constructor", {
|
1166
|
+
value: q,
|
1167
|
+
configurable: !0
|
1168
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), o.isGeneratorFunction = function(e) {
|
1169
1169
|
var n = "function" == typeof e && e.constructor;
|
1170
|
-
return !!n && (n ===
|
1170
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
1171
1171
|
}, o.mark = function(e) {
|
1172
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
1172
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
1173
1173
|
}, o.awrap = function(e) {
|
1174
1174
|
return {
|
1175
1175
|
__await: e
|
@@ -1436,9 +1436,9 @@
|
|
1436
1436
|
|
1437
1437
|
function h() {}
|
1438
1438
|
|
1439
|
-
function f() {}
|
1440
|
-
|
1441
1439
|
function q() {}
|
1440
|
+
|
1441
|
+
function f() {}
|
1442
1442
|
var _ = {};
|
1443
1443
|
b(_, c, (function() {
|
1444
1444
|
return this
|
@@ -1446,7 +1446,7 @@
|
|
1446
1446
|
var W = Object.getPrototypeOf,
|
1447
1447
|
L = W && W(W(x([])));
|
1448
1448
|
L && L !== t && p.call(L, c) && (_ = L);
|
1449
|
-
var g =
|
1449
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
1450
1450
|
|
1451
1451
|
function y(e) {
|
1452
1452
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -1571,17 +1571,17 @@
|
|
1571
1571
|
}
|
1572
1572
|
throw new TypeError(o(n) + " is not iterable")
|
1573
1573
|
}
|
1574
|
-
return
|
1575
|
-
value: q,
|
1576
|
-
configurable: !0
|
1577
|
-
}), r(q, "constructor", {
|
1574
|
+
return q.prototype = f, r(g, "constructor", {
|
1578
1575
|
value: f,
|
1579
1576
|
configurable: !0
|
1580
|
-
}), f
|
1577
|
+
}), r(f, "constructor", {
|
1578
|
+
value: q,
|
1579
|
+
configurable: !0
|
1580
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), n.isGeneratorFunction = function(e) {
|
1581
1581
|
var n = "function" == typeof e && e.constructor;
|
1582
|
-
return !!n && (n ===
|
1582
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
1583
1583
|
}, n.mark = function(e) {
|
1584
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
1584
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
1585
1585
|
}, n.awrap = function(e) {
|
1586
1586
|
return {
|
1587
1587
|
__await: e
|
@@ -2088,6 +2088,14 @@
|
|
2088
2088
|
return function e(n) {
|
2089
2089
|
Array.isArray(n) ? n.forEach(e) : "object" === o(n) && null !== n ? Object.values(n).forEach(e) : "string" == typeof n && /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(n) && t.add(n.trim())
|
2090
2090
|
}(e), n(t)
|
2091
|
+
},
|
2092
|
+
parseBooleanParam: function(e) {
|
2093
|
+
if ("boolean" == typeof e) return e;
|
2094
|
+
if ("string" == typeof e) {
|
2095
|
+
var n = e.toLowerCase().trim();
|
2096
|
+
return "true" === n || "1" === n
|
2097
|
+
}
|
2098
|
+
return !1
|
2091
2099
|
}
|
2092
2100
|
}
|
2093
2101
|
},
|
@@ -2267,10 +2275,10 @@
|
|
2267
2275
|
},
|
2268
2276
|
logError: u,
|
2269
2277
|
logStarted: function() {
|
2270
|
-
return O("🚀- ".concat(i, "; 🅥:").concat("1.25.
|
2278
|
+
return O("🚀- ".concat(i, "; 🅥:").concat("1.25.0728.0943"))
|
2271
2279
|
},
|
2272
2280
|
logEnded: function() {
|
2273
|
-
return O("🔜 - ".concat(i, "; 🅥:").concat("1.25.
|
2281
|
+
return O("🔜 - ".concat(i, "; 🅥:").concat("1.25.0728.0943", " 🔚"))
|
2274
2282
|
},
|
2275
2283
|
DirectoryPathLogs: c,
|
2276
2284
|
logInfoObject: function(e) {
|
@@ -2403,9 +2411,9 @@
|
|
2403
2411
|
|
2404
2412
|
function h() {}
|
2405
2413
|
|
2406
|
-
function f() {}
|
2407
|
-
|
2408
2414
|
function q() {}
|
2415
|
+
|
2416
|
+
function f() {}
|
2409
2417
|
var _ = {};
|
2410
2418
|
b(_, c, (function() {
|
2411
2419
|
return this
|
@@ -2413,7 +2421,7 @@
|
|
2413
2421
|
var W = Object.getPrototypeOf,
|
2414
2422
|
L = W && W(W(x([])));
|
2415
2423
|
L && L !== t && o.call(L, c) && (_ = L);
|
2416
|
-
var g =
|
2424
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
2417
2425
|
|
2418
2426
|
function y(e) {
|
2419
2427
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -2538,17 +2546,17 @@
|
|
2538
2546
|
}
|
2539
2547
|
throw new TypeError(p(n) + " is not iterable")
|
2540
2548
|
}
|
2541
|
-
return
|
2542
|
-
value: q,
|
2543
|
-
configurable: !0
|
2544
|
-
}), a(q, "constructor", {
|
2549
|
+
return q.prototype = f, a(g, "constructor", {
|
2545
2550
|
value: f,
|
2546
2551
|
configurable: !0
|
2547
|
-
}), f
|
2552
|
+
}), a(f, "constructor", {
|
2553
|
+
value: q,
|
2554
|
+
configurable: !0
|
2555
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), n.isGeneratorFunction = function(e) {
|
2548
2556
|
var n = "function" == typeof e && e.constructor;
|
2549
|
-
return !!n && (n ===
|
2557
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
2550
2558
|
}, n.mark = function(e) {
|
2551
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
2559
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
2552
2560
|
}, n.awrap = function(e) {
|
2553
2561
|
return {
|
2554
2562
|
__await: e
|
@@ -2886,9 +2894,9 @@
|
|
2886
2894
|
|
2887
2895
|
function h() {}
|
2888
2896
|
|
2889
|
-
function f() {}
|
2890
|
-
|
2891
2897
|
function q() {}
|
2898
|
+
|
2899
|
+
function f() {}
|
2892
2900
|
var _ = {};
|
2893
2901
|
b(_, c, (function() {
|
2894
2902
|
return this
|
@@ -2896,7 +2904,7 @@
|
|
2896
2904
|
var W = Object.getPrototypeOf,
|
2897
2905
|
L = W && W(W(x([])));
|
2898
2906
|
L && L !== t && p.call(L, c) && (_ = L);
|
2899
|
-
var g =
|
2907
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
2900
2908
|
|
2901
2909
|
function y(e) {
|
2902
2910
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -3021,17 +3029,17 @@
|
|
3021
3029
|
}
|
3022
3030
|
throw new TypeError(o(n) + " is not iterable")
|
3023
3031
|
}
|
3024
|
-
return
|
3025
|
-
value: q,
|
3026
|
-
configurable: !0
|
3027
|
-
}), r(q, "constructor", {
|
3032
|
+
return q.prototype = f, r(g, "constructor", {
|
3028
3033
|
value: f,
|
3029
3034
|
configurable: !0
|
3030
|
-
}), f
|
3035
|
+
}), r(f, "constructor", {
|
3036
|
+
value: q,
|
3037
|
+
configurable: !0
|
3038
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), n.isGeneratorFunction = function(e) {
|
3031
3039
|
var n = "function" == typeof e && e.constructor;
|
3032
|
-
return !!n && (n ===
|
3040
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
3033
3041
|
}, n.mark = function(e) {
|
3034
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
3042
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
3035
3043
|
}, n.awrap = function(e) {
|
3036
3044
|
return {
|
3037
3045
|
__await: e
|
@@ -3651,7 +3659,7 @@
|
|
3651
3659
|
"current.chidinhcls": p(p({}, i["badt_dhs.getCUTPParaClinRequest"]), {}, {
|
3652
3660
|
schema: "current",
|
3653
3661
|
table_name: "chidinhcls",
|
3654
|
-
TG_ARGV0: "mabn,makb,maba,macls",
|
3662
|
+
TG_ARGV0: "mabn,makb,maba,macls,noitru,bant",
|
3655
3663
|
TG_ARGV1: "macls,stt,soluong,iddienbien,idchidinh,manv,ngaykcb,xoa"
|
3656
3664
|
}),
|
3657
3665
|
"current.dmquocgia": p(p({}, i["badt_dhs.getSyncCountry"]), {}, {
|
@@ -3694,7 +3702,7 @@
|
|
3694
3702
|
},
|
3695
3703
|
b = function() {
|
3696
3704
|
var e = [];
|
3697
|
-
for (var n in e.push("\n \nDO $$\nDECLARE\n v_schema_name text := '".concat(c.schema, "';\n v_table_name text := '").concat(c.table, "';\n idx_name text;\n idx_exists boolean;\nBEGIN\n -- 1. Tạo schema nếu chưa tồn tại\n IF NOT EXISTS (\n SELECT 1 FROM pg_namespace WHERE nspname = v_schema_name\n ) THEN\n EXECUTE format('CREATE SCHEMA %I', v_schema_name);\n END IF;\n\n -- 2. Tạo bảng UNLOGGED nếu chưa tồn tại (chỉ cột id tạm)\n IF NOT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = v_table_name AND n.nspname = v_schema_name\n ) THEN\n EXECUTE format('CREATE UNLOGGED TABLE %I.%I (id SERIAL PRIMARY KEY)', v_schema_name, v_table_name);\n END IF;\n\n -- 3. Thêm các cột nếu chưa tồn tại\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'table_name'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN table_name VARCHAR(100)', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'operation'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN operation VARCHAR(10) NOT NULL', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'payload'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN payload JSONB NOT NULL', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'processed'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN processed BOOLEAN DEFAULT FALSE', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'retry_count'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN retry_count INTEGER DEFAULT 0', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'created_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'updated_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN updated_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'processed_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN processed_at TIMESTAMPTZ', v_schema_name, v_table_name);\n END IF;\n\n -- 4. Tạo index idx_processed\n idx_name := 'idx_' || v_table_name || '_processed';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(processed)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 5. Tạo index idx_processed_retry\n idx_name := 'idx_' || v_table_name || '_processed_retry';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(processed, retry_count)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 6. Tạo index idx_created_at\n idx_name := 'idx_' || v_table_name || '_created_at';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(created_at)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 7. Tạo index idx_table_name\n idx_name := 'idx_' || v_table_name || '_table_name';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(table_name)', idx_name, v_schema_name, v_table_name);\n END IF;\n\nEND\n$$;\n")), e.push("\n-- 1. Tạo bảng UNLOGGED nếu chưa tồn tại\nDO $$\nBEGIN\n IF NOT EXISTS (\n SELECT FROM information_schema.tables \n WHERE table_schema = 'badt_dhs' AND table_name = 'benhnhan_synced'\n ) THEN\n EXECUTE '\n CREATE UNLOGGED TABLE badt_dhs.benhnhan_synced (\n id serial PRIMARY KEY\n )';\n END IF;\nEND$$;\n\n-- 2. Thêm các cột nếu chưa có\nDO $$\nDECLARE\n col record;\nBEGIN\n FOR col IN\n SELECT * FROM (\n VALUES \n ('table_name', 'text'),\n ('operation', 'text'),\n ('payload', 'jsonb'),\n ('pathapi', 'text'),\n ('resultapi', 'jsonb'),\n ('created_at', 'timestamptz'),\n ('mabn', 'text'),\n ('makb', 'text'),\n ('maba', 'text'),\n ('type', 'text')\n ) AS cols(name, type)\n LOOP\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns \n WHERE table_schema = 'badt_dhs' AND table_name = 'benhnhan_synced' AND column_name = col.name\n ) THEN\n EXECUTE format(\n 'ALTER TABLE badt_dhs.benhnhan_synced ADD COLUMN %I %s',\n col.name, col.type\n );\n END IF;\n END LOOP;\nEND$$;\n\n-- 3. Tạo index nếu chưa có\nDO $$\nBEGIN\n IF NOT EXISTS (\n SELECT 1 FROM pg_indexes \n WHERE schemaname = 'badt_dhs' AND tablename = 'benhnhan_synced' AND indexname = 'idx_benhnhan_synced_mabn_maba_makb'\n ) THEN\n EXECUTE '\n CREATE INDEX idx_benhnhan_synced_mabn_maba_makb\n ON badt_dhs.benhnhan_synced (mabn, maba, makb)';\n END IF;\nEND$$;\n \n"), e.push("\nCREATE OR REPLACE FUNCTION ".concat(c.schema, ".").concat(c.functionName, "() RETURNS trigger AS $$\nDECLARE\n payload JSONB;\n notification_id INTEGER;\n fixed_cols TEXT[];\n changed_cols TEXT[];\n notify_channel TEXT := TG_TABLE_SCHEMA || '.' || TG_TABLE_NAME;\n dest_schema TEXT := 'badt_dhs'; -- <-- Thay schema đích lưu thông báo tại đây\n dest_table TEXT := 'notifications'; -- <-- Thay bảng đích lưu thông báo tại đây\n changed_fields JSONB := '{}';\n col TEXT;\n old_val TEXT;\n new_val TEXT;\n insert_sql TEXT;\n senddata JSONB; -- Cái này là phần thêm dữ liệu JSON cho trường senddata\n dmcls_row RECORD; -- Sử dụng record để lưu trữ kết quả từ bảng dmcls\n bnnoitru_namvien INTEGER; -- Khai báo biến namvien\n qtdieutri_maba TEXT; \n chidinhcls_noitru INTEGER; \n chungtu_noitru INTEGER; \n api INTEGER; \n chuyenphong_maba TEXT; \n row RECORD; -- Sử dụng record để lưu trữ kết quả từ bảng khác\n maba_by_row TEXT; -- Sử dụng để lấy giá trị maba ở các Row khác nhau\nBEGIN\n --✖️ Xử lý bỏ qua các trường không cần xử lý, tránh tình trạng treo và gửi dữ liệu không cần thiết ✖️\n\n --------------✖️ current.bnnoitru ✖️--------------\n --[ÔNG TRIỆU HẬU - 2025-07-12]: Bỏ trường hợp này để gửi dữ liệu bệnh án ngoại trú\n --IF TG_TABLE_NAME = 'bnnoitru' THEN\n -- bnnoitru_namvien := CASE WHEN TG_OP='INSERT' THEN NEW.namvien ELSE OLD.namvien END;\n -- IF bnnoitru_namvien != 1 THEN\n -- RETURN NULL; -- Nếu namvien không phải 1, bỏ qua không thực hiện tiếp theo\n -- END IF;\n --END IF; \n --------------✖️ current.bnnoitru ✖️--------------\n\n --------------✖️ current.qtdieutri ✖️--------------\n IF TG_TABLE_NAME = 'qtdieutri' THEN\n qtdieutri_maba := CASE WHEN TG_OP='INSERT' THEN NEW.maba ELSE OLD.maba END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n IF api=1 OR COALESCE(qtdieutri_maba,'')='' OR LEFT(qtdieutri_maba, 1)='N' THEN\n RETURN NULL; -- Bỏ qua nếu maba Rỗng và bắt đầu N\n END IF;\n END IF; \n --------------✖️ current.qtdieutri ✖️--------------\n\n --------------✖️ current.chidinhcls ✖️--------------\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n chidinhcls_noitru := CASE WHEN TG_OP='INSERT' THEN NEW.noitru ELSE OLD.noitru END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n maba_by_row := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.maba,'') ELSE COALESCE(OLD.maba,'') END;\n IF api=1 OR (COALESCE(chidinhcls_noitru,0) = 0 AND LEFT(maba_by_row, 1)='N') THEN\n RETURN NULL; -- Không xử lý, nếu api=1 hoặc chỉ định thuộc có maba mà không phải nội trú\n END IF;\n END IF; \n --------------✖️ current.chidinhcls ✖️--------------\n \n --------------✖️ current.chungtu ✖️--------------\n IF TG_TABLE_NAME = 'chungtu' THEN\n chungtu_noitru := CASE WHEN TG_OP='INSERT' THEN NEW.noitru ELSE OLD.noitru END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n IF api=1 OR COALESCE(chungtu_noitru,0) != 1 THEN\n RETURN NULL; -- Không xử lý, nếu noitru khác 1\n END IF;\n END IF; \n --------------✖️ current.chungtu ✖️--------------\n\n --------------✖️ current.chuyenphong ✖️--------------\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n chuyenphong_maba := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.maba,'') ELSE 'KHONGXULY' END;\n IF chuyenphong_maba<>'' THEN\n RETURN NULL; -- Không xử lý, nếu maba khác rỗng\n END IF;\n END IF; \n --------------✖️ current.chuyenphong ✖️--------------\n\n\n -- Lấy danh sách cột cố định và cột thay đổi từ TG_ARGV\n fixed_cols := string_to_array(TG_ARGV[0], ',');\n changed_cols := string_to_array(TG_ARGV[1], ',');\n\n -- Nếu bảng là current.chidinhcls, ta sẽ xây dựng senddata như một phần của payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n -- Truy vấn lấy tencls và dvt từ bảng current.dmcls và lưu vào record dmcls_row\n SELECT tencls, dvt INTO dmcls_row\n FROM current.dmcls\n WHERE macls = NEW.macls;\n\n -- Tạo cấu trúc senddata với các trường cần thiết, để thực hiện gửi liền, chỗ services không cần phải lấy lại thông tin chỉ định, tránh treo\n senddata := jsonb_build_object(\n 'TPCode', NEW.iddienbien,\n 'AdmissionCode', NEW.makb,\n 'MedicalRecordNo', NEW.maba,\n 'PatientCode', NEW.mabn,\n 'EmployeeCode', NEW.manv,\n 'ParaClinReqCode', NEW.iddienbien,\n 'ParaClinRequests', jsonb_build_array(\n jsonb_build_object(\n 'PCReqDltVoucherNo', COALESCE(NEW.idchidinh, '')||COALESCE(NEW.macls, ''),\n 'OrderNo', NEW.stt,\n 'MedSerID', 'null'::jsonb,\n 'MedSerCode', NEW.macls,\n 'MedSerName', dmcls_row.tencls, -- Sử dụng trực tiếp dmcls_row.tencls thay cho NEW.MedSerName\n 'UOMID', 'null'::jsonb,\n 'UOMCode', dmcls_row.dvt,\n 'ParaClinQty', NEW.soluong,\n 'PCReqDtlNotes', ' ',\n 'PatientObject', 1,\n 'FromDate', TO_CHAR(NEW.ngaykcb AT TIME ZONE 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"'),\n 'ToDate', TO_CHAR(NEW.ngaykcb AT TIME ZONE 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"')\n )\n )\n );\n END IF;\n\n -- Nếu bảng là current.chuyenphong, ta sẽ xây dựng senddata như một phần của payload\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n -- Truy vấn lấy thông tin từ khám bệnh đưa vào biến row\n SELECT manv, kqcdoan INTO row\n FROM current.khambenh\n WHERE mabn = NEW.mabn AND makb = NEW.makb AND madv = NEW.madvc AND maphong = NEW.mapc;\n\n -- Tạo cấu trúc senddata với các trường cần thiết, để thực hiện gửi liền, chỗ services không cần phải lấy lại thông tin chỉ định, tránh treo\n senddata := jsonb_build_object(\n 'AdmissionCode', NEW.makb,\n 'OldDepartmentCode', NEW.mapc, --Mã khoa chuyển (Xử lý ngoại trú sẽ lấy mã phòng làm mã khoa)\n 'DepartmentCode', NEW.mapn, --Mã khoa chuyển (Xử lý ngoại trú sẽ lấy mã phòng làm mã khoa)\n 'RoomID', NEW.mapn,\n 'OldRoomID', NEW.mapc,\n 'BedID','', --Giường\n 'TransferDate',TO_CHAR(new.ngaychuyen, 'YYYY-MM-DD HH24:MI'), --Ngày chuyển\n 'TransferNotes', 'Chuyển phòng khám bệnh',\n 'TransferStatus', 0,\n 'OrderNum', 1,\n 'PatientStatus', '',\n 'Diagnosis', row.kqcdoan, -- Chẩn đoán\n 'TransferReason','', -- Lý do chuyển\n 'TreatmentDoctorCode', row.manv, --BS điều trị\n 'TreatmentDepartmentCode',''\n );\n END IF;\n\n -- Kiểm tra các loại thao tác: INSERT, UPDATE, DELETE\n IF TG_OP = 'INSERT' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định và thêm vào payload\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO new_val USING NEW;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(new_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n\n ELSIF TG_OP = 'UPDATE' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO new_val USING NEW;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(new_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n\n -- Lặp qua các cột thay đổi\n FOREACH col IN ARRAY changed_cols LOOP\n EXECUTE format('SELECT $1.%I::text, $2.%I::text', col, col) INTO old_val, new_val USING OLD, NEW;\n\n IF old_val IS DISTINCT FROM new_val THEN\n IF new_val IS NOT NULL THEN\n changed_fields := changed_fields || jsonb_build_object(\n col, jsonb_build_object('old', old_val, 'new', new_val)\n );\n ELSE\n changed_fields := changed_fields || jsonb_build_object(\n col, jsonb_build_object('old', old_val, 'new', 'null'::jsonb)\n );\n END IF;\n END IF;\n END LOOP;\n\n IF changed_fields = '{}'::jsonb THEN\n RETURN NULL;\n END IF;\n\n payload := jsonb_set(payload, '{changed_fields}', to_jsonb(changed_fields));\n\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n\n ELSIF TG_OP = 'DELETE' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO old_val USING OLD;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(old_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n END IF;\n\n -- Chuẩn bị câu lệnh insert động với schema và table đích\n insert_sql := format(\n 'INSERT INTO %I.%I(table_name, operation, payload) VALUES ($1, $2, $3) RETURNING id',\n dest_schema, dest_table\n );\n\n -- Thực thi insert, lấy id trả về\n EXECUTE insert_sql USING notify_channel, TG_OP, payload INTO notification_id;\n\n -- Cập nhật payload thêm notification_id và channel\n payload := jsonb_set(payload, '{notification_id}', to_jsonb(notification_id));\n payload := jsonb_set(payload, '{channel}', to_jsonb(notify_channel));\n\n -- Gửi notify với payload đã được cập nhật\n PERFORM pg_notify('").concat(c.name, "', payload::text);\n\n RETURN NULL;\nEND;\n$$ LANGUAGE plpgsql;\n\n\n ")), e.push("\nDROP FUNCTION IF EXISTS ".concat(c.schema, ".").concat(c.functionName_replay, ";\nCREATE OR REPLACE FUNCTION ").concat(c.schema, ".").concat(c.functionName_replay, "(p_id INTEGER)\nRETURNS VOID AS $$\nDECLARE\n v_payload JSONB;\n v_channel TEXT;\nBEGIN\n -- Lấy payload và tên kênh từ bảng notifications\n SELECT payload, table_name INTO v_payload, v_channel\n FROM ").concat(c.schema, ".").concat(c.table, "\n WHERE id = p_id;\n\n IF v_payload IS NULL THEN\n RAISE EXCEPTION 'Không tìm thấy payload với id = %', p_id;\n END IF;\n\n -- Cập nhật payload với channel và notification_id\n v_payload := jsonb_set(v_payload, '{channel}', to_jsonb(v_channel));\n v_payload := jsonb_set(v_payload, '{notification_id}', to_jsonb(p_id));\n\n -- Gửi lại notification với payload đã cập nhật\n PERFORM pg_notify('").concat(c.name, "', v_payload::text);\nEND;\n$$ LANGUAGE plpgsql;\n ")), s) e.push(s[n].codesql), e.push(M(s[n]));
|
3705
|
+
for (var n in e.push("\n \nDO $$\nDECLARE\n v_schema_name text := '".concat(c.schema, "';\n v_table_name text := '").concat(c.table, "';\n idx_name text;\n idx_exists boolean;\nBEGIN\n -- 1. Tạo schema nếu chưa tồn tại\n IF NOT EXISTS (\n SELECT 1 FROM pg_namespace WHERE nspname = v_schema_name\n ) THEN\n EXECUTE format('CREATE SCHEMA %I', v_schema_name);\n END IF;\n\n -- 2. Tạo bảng UNLOGGED nếu chưa tồn tại (chỉ cột id tạm)\n IF NOT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = v_table_name AND n.nspname = v_schema_name\n ) THEN\n EXECUTE format('CREATE UNLOGGED TABLE %I.%I (id SERIAL PRIMARY KEY)', v_schema_name, v_table_name);\n END IF;\n\n -- 3. Thêm các cột nếu chưa tồn tại\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'table_name'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN table_name VARCHAR(100)', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'operation'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN operation VARCHAR(10) NOT NULL', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'payload'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN payload JSONB NOT NULL', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'processed'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN processed BOOLEAN DEFAULT FALSE', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'retry_count'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN retry_count INTEGER DEFAULT 0', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'created_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN created_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'updated_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN updated_at TIMESTAMPTZ DEFAULT CURRENT_TIMESTAMP', v_schema_name, v_table_name);\n END IF;\n\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns\n WHERE table_schema = v_schema_name AND table_name = v_table_name AND column_name = 'processed_at'\n ) THEN\n EXECUTE format('ALTER TABLE %I.%I ADD COLUMN processed_at TIMESTAMPTZ', v_schema_name, v_table_name);\n END IF;\n\n -- 4. Tạo index idx_processed\n idx_name := 'idx_' || v_table_name || '_processed';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(processed)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 5. Tạo index idx_processed_retry\n idx_name := 'idx_' || v_table_name || '_processed_retry';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(processed, retry_count)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 6. Tạo index idx_created_at\n idx_name := 'idx_' || v_table_name || '_created_at';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(created_at)', idx_name, v_schema_name, v_table_name);\n END IF;\n\n -- 7. Tạo index idx_table_name\n idx_name := 'idx_' || v_table_name || '_table_name';\n SELECT EXISTS (\n SELECT 1 FROM pg_class c\n JOIN pg_namespace n ON n.oid = c.relnamespace\n WHERE c.relname = idx_name AND n.nspname = v_schema_name\n ) INTO idx_exists;\n\n IF NOT idx_exists THEN\n EXECUTE format('CREATE INDEX %I ON %I.%I(table_name)', idx_name, v_schema_name, v_table_name);\n END IF;\n\nEND\n$$;\n")), e.push("\n-- 1. Tạo bảng UNLOGGED nếu chưa tồn tại\nDO $$\nBEGIN\n IF NOT EXISTS (\n SELECT FROM information_schema.tables \n WHERE table_schema = 'badt_dhs' AND table_name = 'benhnhan_synced'\n ) THEN\n EXECUTE '\n CREATE UNLOGGED TABLE badt_dhs.benhnhan_synced (\n id serial PRIMARY KEY\n )';\n END IF;\nEND$$;\n\n-- 2. Thêm các cột nếu chưa có\nDO $$\nDECLARE\n col record;\nBEGIN\n FOR col IN\n SELECT * FROM (\n VALUES \n ('table_name', 'text'),\n ('operation', 'text'),\n ('payload', 'jsonb'),\n ('pathapi', 'text'),\n ('resultapi', 'jsonb'),\n ('created_at', 'timestamptz'),\n ('mabn', 'text'),\n ('makb', 'text'),\n ('maba', 'text'),\n ('type', 'text')\n ) AS cols(name, type)\n LOOP\n IF NOT EXISTS (\n SELECT 1 FROM information_schema.columns \n WHERE table_schema = 'badt_dhs' AND table_name = 'benhnhan_synced' AND column_name = col.name\n ) THEN\n EXECUTE format(\n 'ALTER TABLE badt_dhs.benhnhan_synced ADD COLUMN %I %s',\n col.name, col.type\n );\n END IF;\n END LOOP;\nEND$$;\n\n-- 3. Tạo index nếu chưa có\nDO $$\nBEGIN\n IF NOT EXISTS (\n SELECT 1 FROM pg_indexes \n WHERE schemaname = 'badt_dhs' AND tablename = 'benhnhan_synced' AND indexname = 'idx_benhnhan_synced_mabn_maba_makb'\n ) THEN\n EXECUTE '\n CREATE INDEX idx_benhnhan_synced_mabn_maba_makb\n ON badt_dhs.benhnhan_synced (mabn, maba, makb)';\n END IF;\nEND$$;\n \n"), e.push("\nCREATE OR REPLACE FUNCTION ".concat(c.schema, ".").concat(c.functionName, "() RETURNS trigger AS $$\nDECLARE\n payload JSONB;\n notification_id INTEGER;\n fixed_cols TEXT[];\n changed_cols TEXT[];\n notify_channel TEXT := TG_TABLE_SCHEMA || '.' || TG_TABLE_NAME;\n dest_schema TEXT := 'badt_dhs'; -- <-- Thay schema đích lưu thông báo tại đây\n dest_table TEXT := 'notifications'; -- <-- Thay bảng đích lưu thông báo tại đây\n changed_fields JSONB := '{}';\n col TEXT;\n old_val TEXT;\n new_val TEXT;\n insert_sql TEXT;\n senddata JSONB; -- Cái này là phần thêm dữ liệu JSON cho trường senddata\n dmcls_row RECORD; -- Sử dụng record để lưu trữ kết quả từ bảng dmcls\n bnnoitru_namvien INTEGER; -- Khai báo biến namvien\n qtdieutri_maba TEXT; \n chidinhcls_noitru INTEGER; \n chungtu_noitru INTEGER; \n api INTEGER; \n chuyenphong_maba TEXT; \n row RECORD; -- Sử dụng record để lưu trữ kết quả từ bảng khác\n maba_by_row TEXT; -- Sử dụng để lấy giá trị maba ở các Row khác nhau\n pathApi TEXT; -- Sử dụng cấu hình pathApi\nBEGIN\n --✖️ Xử lý bỏ qua các trường không cần xử lý, tránh tình trạng treo và gửi dữ liệu không cần thiết ✖️\n\n --------------✖️ current.bnnoitru ✖️--------------\n --[ÔNG TRIỆU HẬU - 2025-07-12]: Bỏ trường hợp này để gửi dữ liệu bệnh án ngoại trú\n --IF TG_TABLE_NAME = 'bnnoitru' THEN\n -- bnnoitru_namvien := CASE WHEN TG_OP='INSERT' THEN NEW.namvien ELSE OLD.namvien END;\n -- IF bnnoitru_namvien != 1 THEN\n -- RETURN NULL; -- Nếu namvien không phải 1, bỏ qua không thực hiện tiếp theo\n -- END IF;\n --END IF; \n --------------✖️ current.bnnoitru ✖️--------------\n\n --------------✖️ current.qtdieutri ✖️--------------\n IF TG_TABLE_NAME = 'qtdieutri' THEN\n qtdieutri_maba := CASE WHEN TG_OP='INSERT' THEN NEW.maba ELSE OLD.maba END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n IF api=1 OR COALESCE(qtdieutri_maba,'')='' OR LEFT(qtdieutri_maba, 1)='N' THEN\n RETURN NULL; -- Bỏ qua nếu maba Rỗng và bắt đầu N\n END IF;\n END IF; \n --------------✖️ current.qtdieutri ✖️--------------\n\n --------------✖️ current.chidinhcls ✖️--------------\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n chidinhcls_noitru := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.noitru,0) ELSE COALESCE(OLD.noitru,0) END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n maba_by_row := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.maba,'') ELSE COALESCE(OLD.maba,'') END;\n IF api=1 OR (COALESCE(chidinhcls_noitru,0) = 0 AND LEFT(maba_by_row, 1)='N') THEN\n RETURN NULL; -- Không xử lý, nếu api=1 hoặc chỉ định thuộc có maba mà không phải nội trú\n END IF;\n END IF; \n --------------✖️ current.chidinhcls ✖️--------------\n \n --------------✖️ current.chungtu ✖️--------------\n IF TG_TABLE_NAME = 'chungtu' THEN\n chungtu_noitru := CASE WHEN TG_OP='INSERT' THEN NEW.noitru ELSE OLD.noitru END;\n api := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.api,0) ELSE COALESCE(OLD.api,0) END;\n IF api=1 OR COALESCE(chungtu_noitru,0) != 1 THEN\n RETURN NULL; -- Không xử lý, nếu noitru khác 1\n END IF;\n END IF; \n --------------✖️ current.chungtu ✖️--------------\n\n --------------✖️ current.chuyenphong ✖️--------------\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n chuyenphong_maba := CASE WHEN TG_OP='INSERT' THEN COALESCE(NEW.maba,'') ELSE 'KHONGXULY' END;\n IF chuyenphong_maba<>'' THEN\n RETURN NULL; -- Không xử lý, nếu maba khác rỗng\n END IF;\n END IF; \n --------------✖️ current.chuyenphong ✖️--------------\n\n\n -- Lấy danh sách cột cố định và cột thay đổi từ TG_ARGV\n fixed_cols := string_to_array(TG_ARGV[0], ',');\n changed_cols := string_to_array(TG_ARGV[1], ',');\n\n -- Nếu bảng là current.chidinhcls, ta sẽ xây dựng senddata như một phần của payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n -- Truy vấn lấy tencls và dvt từ bảng current.dmcls và lưu vào record dmcls_row\n SELECT tencls, dvt INTO dmcls_row\n FROM current.dmcls\n WHERE macls = NEW.macls;\n IF chidinhcls_noitru=0 AND maba_by_row='' THEN\n pathApi='server/his-server/api/Connect/CUTPParaClinRequestOUT';\n END IF;\n\n -- Tạo cấu trúc senddata với các trường cần thiết, để thực hiện gửi liền, chỗ services không cần phải lấy lại thông tin chỉ định, tránh treo\n senddata := jsonb_build_object(\n 'pathApi', pathApi,\n 'TPCode', NEW.iddienbien,\n 'AdmissionCode', NEW.makb,\n 'MedicalRecordNo', NEW.maba,\n 'PatientCode', NEW.mabn,\n 'EmployeeCode', NEW.manv,\n 'ParaClinReqCode', CASE WHEN chidinhcls_noitru=0 AND maba_by_row='' THEN NEW.makb||'.'||NEW.madv||'.'||NEW.maphong ELSE NEW.iddienbien END,\n 'ParaClinRequests', jsonb_build_array(\n jsonb_build_object(\n 'PCReqDltVoucherNo', COALESCE(NEW.idchidinh, '')||COALESCE(NEW.macls, ''),\n 'OrderNo', NEW.stt,\n 'MedSerID', 'null'::jsonb,\n 'MedSerCode', NEW.macls,\n 'MedSerName', dmcls_row.tencls, -- Sử dụng trực tiếp dmcls_row.tencls thay cho NEW.MedSerName\n 'UOMID', 'null'::jsonb,\n 'UOMCode', dmcls_row.dvt,\n 'ParaClinQty', NEW.soluong,\n 'PCReqDtlNotes', ' ',\n 'PatientObject', 1,\n 'FromDate', TO_CHAR(NEW.ngaykcb AT TIME ZONE 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"'),\n 'ToDate', TO_CHAR(NEW.ngaykcb AT TIME ZONE 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"')\n )\n ),\n 'DiagnosisDesc',NEW.kqcdoan\n );\n END IF;\n\n -- Nếu bảng là current.chuyenphong, ta sẽ xây dựng senddata như một phần của payload\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n -- Truy vấn lấy thông tin từ khám bệnh đưa vào biến row\n SELECT manv, kqcdoan INTO row\n FROM current.khambenh\n WHERE mabn = NEW.mabn AND makb = NEW.makb AND madv = NEW.madvc AND maphong = NEW.mapc;\n\n -- Tạo cấu trúc senddata với các trường cần thiết, để thực hiện gửi liền, chỗ services không cần phải lấy lại thông tin chỉ định, tránh treo\n senddata := jsonb_build_object(\n 'AdmissionCode', NEW.makb,\n 'OldDepartmentCode', NEW.mapc, --Mã khoa chuyển (Xử lý ngoại trú sẽ lấy mã phòng làm mã khoa)\n 'DepartmentCode', NEW.mapn, --Mã khoa chuyển (Xử lý ngoại trú sẽ lấy mã phòng làm mã khoa)\n 'RoomID', NEW.mapn,\n 'OldRoomID', NEW.mapc,\n 'BedID','', --Giường\n 'TransferDate',TO_CHAR(new.ngaychuyen, 'YYYY-MM-DD HH24:MI'), --Ngày chuyển\n 'TransferNotes', 'Chuyển phòng khám bệnh',\n 'TransferStatus', 0,\n 'OrderNum', 1,\n 'PatientStatus', '',\n 'Diagnosis', row.kqcdoan, -- Chẩn đoán\n 'TransferReason','', -- Lý do chuyển\n 'TreatmentDoctorCode', row.manv, --BS điều trị\n 'TreatmentDepartmentCode',''\n );\n END IF;\n\n -- Kiểm tra các loại thao tác: INSERT, UPDATE, DELETE\n IF TG_OP = 'INSERT' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định và thêm vào payload\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO new_val USING NEW;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(new_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chuyenphong' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n\n ELSIF TG_OP = 'UPDATE' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO new_val USING NEW;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(new_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n\n -- Lặp qua các cột thay đổi\n FOREACH col IN ARRAY changed_cols LOOP\n EXECUTE format('SELECT $1.%I::text, $2.%I::text', col, col) INTO old_val, new_val USING OLD, NEW;\n\n IF old_val IS DISTINCT FROM new_val THEN\n IF new_val IS NOT NULL THEN\n changed_fields := changed_fields || jsonb_build_object(\n col, jsonb_build_object('old', old_val, 'new', new_val)\n );\n ELSE\n changed_fields := changed_fields || jsonb_build_object(\n col, jsonb_build_object('old', old_val, 'new', 'null'::jsonb)\n );\n END IF;\n END IF;\n END LOOP;\n\n IF changed_fields = '{}'::jsonb THEN\n RETURN NULL;\n END IF;\n\n payload := jsonb_set(payload, '{changed_fields}', to_jsonb(changed_fields));\n\n -- Nếu bảng là chidinhcls, ta thêm senddata vào payload\n IF TG_TABLE_NAME = 'chidinhcls' THEN\n payload := jsonb_set(payload, '{senddata}', senddata);\n END IF;\n\n ELSIF TG_OP = 'DELETE' THEN\n payload := jsonb_build_object('operation', TG_OP);\n\n -- Lặp qua các cột cố định\n FOREACH col IN ARRAY fixed_cols LOOP\n EXECUTE format('SELECT $1.%I::text', col) INTO old_val USING OLD;\n\n IF new_val IS NOT NULL THEN\n payload := jsonb_set(payload, ARRAY[col], to_jsonb(old_val));\n ELSE\n payload := jsonb_set(payload, ARRAY[col], 'null'::jsonb);\n END IF;\n END LOOP;\n END IF;\n\n -- Chuẩn bị câu lệnh insert động với schema và table đích\n insert_sql := format(\n 'INSERT INTO %I.%I(table_name, operation, payload) VALUES ($1, $2, $3) RETURNING id',\n dest_schema, dest_table\n );\n\n -- Thực thi insert, lấy id trả về\n EXECUTE insert_sql USING notify_channel, TG_OP, payload INTO notification_id;\n\n -- Cập nhật payload thêm notification_id và channel\n payload := jsonb_set(payload, '{notification_id}', to_jsonb(notification_id));\n payload := jsonb_set(payload, '{channel}', to_jsonb(notify_channel));\n\n -- Gửi notify với payload đã được cập nhật\n PERFORM pg_notify('").concat(c.name, "', payload::text);\n\n RETURN NULL;\nEND;\n$$ LANGUAGE plpgsql;\n\n\n ")), e.push("\nDROP FUNCTION IF EXISTS ".concat(c.schema, ".").concat(c.functionName_replay, ";\nCREATE OR REPLACE FUNCTION ").concat(c.schema, ".").concat(c.functionName_replay, "(p_id INTEGER)\nRETURNS VOID AS $$\nDECLARE\n v_payload JSONB;\n v_channel TEXT;\nBEGIN\n -- Lấy payload và tên kênh từ bảng notifications\n SELECT payload, table_name INTO v_payload, v_channel\n FROM ").concat(c.schema, ".").concat(c.table, "\n WHERE id = p_id;\n\n IF v_payload IS NULL THEN\n RAISE EXCEPTION 'Không tìm thấy payload với id = %', p_id;\n END IF;\n\n -- Cập nhật payload với channel và notification_id\n v_payload := jsonb_set(v_payload, '{channel}', to_jsonb(v_channel));\n v_payload := jsonb_set(v_payload, '{notification_id}', to_jsonb(p_id));\n\n -- Gửi lại notification với payload đã cập nhật\n PERFORM pg_notify('").concat(c.name, "', v_payload::text);\nEND;\n$$ LANGUAGE plpgsql;\n ")), s) e.push(s[n].codesql), e.push(M(s[n]));
|
3698
3706
|
return e.push(i["badt_dhs.getSyncPATFR"].codesql), e.push(i["badt_dhs.getSyncDCHG"].codesql), e.push(i["badt_dhs.GetSyncCityProvince"].codesql), e.push(i["badt_dhs.GetSyncDistrict"].codesql), e.push(i["badt_dhs.GetSyncWard"].codesql), e.push(i["badt_dhs.getSyncDCHG_Ngoai_Khambenh"].codesql), e
|
3699
3707
|
}();
|
3700
3708
|
e.exports = {
|
@@ -3882,9 +3890,9 @@
|
|
3882
3890
|
|
3883
3891
|
function h() {}
|
3884
3892
|
|
3885
|
-
function f() {}
|
3886
|
-
|
3887
3893
|
function q() {}
|
3894
|
+
|
3895
|
+
function f() {}
|
3888
3896
|
var _ = {};
|
3889
3897
|
b(_, r, (function() {
|
3890
3898
|
return this
|
@@ -3892,7 +3900,7 @@
|
|
3892
3900
|
var W = Object.getPrototypeOf,
|
3893
3901
|
L = W && W(W(x([])));
|
3894
3902
|
L && L !== t && o.call(L, r) && (_ = L);
|
3895
|
-
var g =
|
3903
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
3896
3904
|
|
3897
3905
|
function y(e) {
|
3898
3906
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -4017,17 +4025,17 @@
|
|
4017
4025
|
}
|
4018
4026
|
throw new TypeError(c(n) + " is not iterable")
|
4019
4027
|
}
|
4020
|
-
return
|
4021
|
-
value: q,
|
4022
|
-
configurable: !0
|
4023
|
-
}), a(q, "constructor", {
|
4028
|
+
return q.prototype = f, a(g, "constructor", {
|
4024
4029
|
value: f,
|
4025
4030
|
configurable: !0
|
4026
|
-
}), f
|
4031
|
+
}), a(f, "constructor", {
|
4032
|
+
value: q,
|
4033
|
+
configurable: !0
|
4034
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), n.isGeneratorFunction = function(e) {
|
4027
4035
|
var n = "function" == typeof e && e.constructor;
|
4028
|
-
return !!n && (n ===
|
4036
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
4029
4037
|
}, n.mark = function(e) {
|
4030
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
4038
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
4031
4039
|
}, n.awrap = function(e) {
|
4032
4040
|
return {
|
4033
4041
|
__await: e
|
@@ -4176,8 +4184,8 @@
|
|
4176
4184
|
A = t(9e3),
|
4177
4185
|
m = t(4800),
|
4178
4186
|
h = t(4067),
|
4179
|
-
|
4180
|
-
|
4187
|
+
q = t(5627),
|
4188
|
+
f = t(763),
|
4181
4189
|
_ = t(6758),
|
4182
4190
|
W = new u,
|
4183
4191
|
L = new l,
|
@@ -4317,104 +4325,105 @@
|
|
4317
4325
|
},
|
4318
4326
|
N = function() {
|
4319
4327
|
var e = b(s().mark((function e(n) {
|
4320
|
-
var t, o, a, p, i, M, z, d, O, u, l, h, _, W, g, N, T, E, S, x, w, k, D, B, C, X, Y, j, P, I, H, F, U;
|
4328
|
+
var t, o, a, p, i, M, z, d, O, u, l, h, _, W, g, N, T, E, S, x, w, k, D, B, C, X, Y, j, P, I, H, F, U, G, V, J, $, K, Q;
|
4321
4329
|
return s().wrap((function(e) {
|
4322
4330
|
for (;;) switch (e.prev = e.next) {
|
4323
4331
|
case 0:
|
4324
|
-
if (t = JSON.parse(n.payload), o = t.channel, p = (a = {}).data, i = a.pathApi, M = a.pgFunctionName, d = void 0 === (z = a.method) ? "POST" : z, u = void 0 === (O = a.mutiRequests) ? [] : O, l = t.operation, t.bant, h = t.maba, _ = t.mabn, W = t.makb, t.namvien, t.makh, g = !1, e.prev =
|
4325
|
-
e.next =
|
4332
|
+
if (t = JSON.parse(n.payload), o = t.channel, p = (a = {}).data, i = a.pathApi, M = a.pgFunctionName, d = void 0 === (z = a.method) ? "POST" : z, u = void 0 === (O = a.mutiRequests) ? [] : O, l = t.operation, t.bant, h = t.maba, _ = t.mabn, W = t.makb, t.namvien, t.makh, T = void 0 === (N = (g = {}).EmployeeCode) ? "" : N, S = void 0 === (E = g.ParaClinReqCode) ? "" : E, x = !1, e.prev = 6, "current.dmbenhnhan" !== o) {
|
4333
|
+
e.next = 13;
|
4326
4334
|
break
|
4327
4335
|
}
|
4328
|
-
return e.next =
|
4329
|
-
case
|
4330
|
-
return e.next =
|
4331
|
-
case 11:
|
4332
|
-
return e.abrupt("return");
|
4336
|
+
return e.next = 10, L.query(" SELECT badt_dhs.getSyncADM_ByDmbenhnhan('".concat(_, "'); "));
|
4337
|
+
case 10:
|
4338
|
+
return e.next = 12, y.markProcessed(t.notification_id);
|
4333
4339
|
case 12:
|
4334
|
-
|
4335
|
-
|
4336
|
-
|
4337
|
-
|
4340
|
+
return e.abrupt("return");
|
4341
|
+
case 13:
|
4342
|
+
k = function() {
|
4343
|
+
if (!(o in q)) throw new Error("Không tìm thấy bảng '".concat(o, "' trong cấu hình dhsPathApi."));
|
4344
|
+
i = q[o]
|
4345
|
+
}, e.t0 = o, e.next = "current.bnnoitru" === e.t0 ? 17 : "current.chidinhcls" === e.t0 ? 33 : "current.chungtu" === e.t0 ? 40 : "current.psdangky" === e.t0 ? 48 : 51;
|
4338
4346
|
break;
|
4339
|
-
case
|
4340
|
-
i = v.pathApi, M = v.pgFunctionName, e.t1 = l, e.next = "UPDATE" === e.t1 ?
|
4347
|
+
case 17:
|
4348
|
+
i = v.pathApi, M = v.pgFunctionName, e.t1 = l, e.next = "UPDATE" === e.t1 ? 22 : 32;
|
4341
4349
|
break;
|
4342
|
-
case
|
4343
|
-
if (1 !== Number(
|
4344
|
-
e.next =
|
4350
|
+
case 22:
|
4351
|
+
if (1 !== Number(f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.ravien.new"))) {
|
4352
|
+
e.next = 27;
|
4345
4353
|
break
|
4346
4354
|
}
|
4347
|
-
return i = "server/his-server/api/SyncData/SyncDCHG", M = "badt_dhs.getSyncDCHG", e.abrupt("break",
|
4348
|
-
case
|
4349
|
-
if ("" ===
|
4350
|
-
e.next =
|
4355
|
+
return i = "server/his-server/api/SyncData/SyncDCHG", M = "badt_dhs.getSyncDCHG", e.abrupt("break", 32);
|
4356
|
+
case 27:
|
4357
|
+
if ("" === f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.madv.new") + "") {
|
4358
|
+
e.next = 32;
|
4351
4359
|
break
|
4352
4360
|
}
|
4353
|
-
return i = "server/his-server/api/SyncData/SyncPATFR", M = "badt_dhs.getSyncPATFR", e.abrupt("break",
|
4354
|
-
case 31:
|
4355
|
-
return e.abrupt("break", 48);
|
4361
|
+
return i = "server/his-server/api/SyncData/SyncPATFR", M = "badt_dhs.getSyncPATFR", e.abrupt("break", 32);
|
4356
4362
|
case 32:
|
4357
|
-
return
|
4363
|
+
return e.abrupt("break", 53);
|
4364
|
+
case 33:
|
4365
|
+
return k(), D = f.getPropertyValueIgnoreCaseForceEmpty(t, "senddata.pathApi"), T = f.getPropertyValueIgnoreCaseForceEmpty(t, "senddata.EmployeeCode"), S = f.getPropertyValueIgnoreCaseForceEmpty(t, "senddata.ParaClinReqCode"), "" !== D && (i = D), "UPDATE" === l && 1 === (B = Number(f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.xoa.new"))) && (C = f.getPropertyValueIgnoreCaseForceEmpty(t, "senddata.ParaClinReqCode"), X = f.getPropertyValueIgnoreCaseForceEmpty(t, "senddata.ParaClinRequests.0.PCReqDltVoucherNo"), i = "server/his-server/api/Connect/DTPParaClinReqDtl?ParaClinReqCode=".concat(C, "&PCReqDltVoucherNo=").concat(X), d = "DELETE", "" !== D && (i = "server/his-server/api/Connect/DTPParaClinRequestOUT?ParaClinReqCode=".concat(C, "&PCReqDltVoucherNo=").concat(X)), A.logInfo("current.chidinhcls.xoaNEW === 1:".concat(JSON.stringify({
|
4358
4366
|
pathApi: i,
|
4359
|
-
method: d
|
4360
|
-
|
4361
|
-
|
4362
|
-
|
4363
|
-
|
4367
|
+
method: d,
|
4368
|
+
payloadPathApi: D
|
4369
|
+
})))), e.abrupt("break", 53);
|
4370
|
+
case 40:
|
4371
|
+
if (h = f.getPropertyValueIgnoreCaseForceEmpty(t, "makh"), "1" !== f.getPropertyValueIgnoreCaseForceEmpty(t, "loaitoa")) {
|
4372
|
+
e.next = 45;
|
4364
4373
|
break
|
4365
4374
|
}
|
4366
|
-
return
|
4367
|
-
case
|
4368
|
-
return
|
4375
|
+
return x = !0, e.abrupt("return");
|
4376
|
+
case 45:
|
4377
|
+
return k(), "UPDATE" === l && (B = Number(f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.xoa.new")), j = (Y = {}).pshxhdXoaRows, P = Y.sql, 1 === B && (I = f.getPropertyValueIgnoreCaseForceEmpty(t, "sohd"), f.getPropertyValueIgnoreCaseForceEmpty(t, "iddienbien"), i = "server/his-server/api/Connect/DTPPrescription?PresCode=".concat(I), d = "DELETE"), A.logInfo("current.chungtu.xoaNEW === 1:".concat(JSON.stringify({
|
4369
4378
|
mutiRequests: u,
|
4370
|
-
pshxhdXoaRows:
|
4371
|
-
sql:
|
4379
|
+
pshxhdXoaRows: j,
|
4380
|
+
sql: P,
|
4372
4381
|
pathApi: i,
|
4373
4382
|
method: d
|
4374
|
-
})))), e.abrupt("break",
|
4375
|
-
case
|
4376
|
-
return
|
4377
|
-
madv_inphieuNEW:
|
4378
|
-
ngayinphieuNEW:
|
4379
|
-
ngayinphieuOLD:
|
4383
|
+
})))), e.abrupt("break", 53);
|
4384
|
+
case 48:
|
4385
|
+
return k(), "UPDATE" === l && (H = f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.ngayinphieu.new"), F = f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.ngayinphieu.old"), "" === (U = f.getPropertyValueIgnoreCaseForceEmpty(t, "changed_fields.madv_inphieu.new")) && (F && null !== F || !H || isNaN(Date.parse(H))) ? x = !0 : (i = "server/his-server/api/SyncData/SyncDCHG", M = "badt_dhs.getSyncDCHG_Ngoai_Khambenh"), A.logInfoObject({
|
4386
|
+
madv_inphieuNEW: U,
|
4387
|
+
ngayinphieuNEW: H,
|
4388
|
+
ngayinphieuOLD: F,
|
4380
4389
|
pathApi: i,
|
4381
4390
|
method: d,
|
4382
|
-
isCancelHandleNotification:
|
4383
|
-
}, "current.psdangky.".concat(l))), e.abrupt("break",
|
4384
|
-
case
|
4385
|
-
return
|
4386
|
-
case
|
4387
|
-
if (!0 !==
|
4388
|
-
e.next =
|
4391
|
+
isCancelHandleNotification: x
|
4392
|
+
}, "current.psdangky.".concat(l))), e.abrupt("break", 53);
|
4393
|
+
case 51:
|
4394
|
+
return k(), e.abrupt("break", 53);
|
4395
|
+
case 53:
|
4396
|
+
if (!0 !== x) {
|
4397
|
+
e.next = 55;
|
4389
4398
|
break
|
4390
4399
|
}
|
4391
4400
|
return e.abrupt("return");
|
4392
|
-
case
|
4393
|
-
if (!0 !== (
|
4394
|
-
e.next =
|
4401
|
+
case 55:
|
4402
|
+
if (!0 !== (G = u && u.length > 0)) {
|
4403
|
+
e.next = 60;
|
4395
4404
|
break
|
4396
4405
|
}
|
4397
|
-
p = u, e.next =
|
4406
|
+
p = u, e.next = 67;
|
4398
4407
|
break;
|
4399
|
-
case
|
4408
|
+
case 60:
|
4400
4409
|
if (!("senddata" in t)) {
|
4401
|
-
e.next =
|
4410
|
+
e.next = 64;
|
4402
4411
|
break
|
4403
4412
|
}
|
4404
|
-
p = t.senddata, e.next =
|
4413
|
+
p = t.senddata, e.next = 67;
|
4405
4414
|
break;
|
4406
|
-
case
|
4407
|
-
return e.next =
|
4408
|
-
case
|
4415
|
+
case 64:
|
4416
|
+
return e.next = 66, R(t, M);
|
4417
|
+
case 66:
|
4409
4418
|
p = e.sent;
|
4410
|
-
case
|
4411
|
-
if (!0 !==
|
4412
|
-
e.next =
|
4419
|
+
case 67:
|
4420
|
+
if (!0 !== x) {
|
4421
|
+
e.next = 69;
|
4413
4422
|
break
|
4414
4423
|
}
|
4415
4424
|
return e.abrupt("return");
|
4416
|
-
case
|
4417
|
-
if (
|
4425
|
+
case 69:
|
4426
|
+
if (Z = void 0, Z = function() {
|
4418
4427
|
var e = b(s().mark((function e() {
|
4419
4428
|
var n, o;
|
4420
4429
|
return s().wrap((function(e) {
|
@@ -4445,10 +4454,10 @@
|
|
4445
4454
|
pathApi: i
|
4446
4455
|
});
|
4447
4456
|
case 14:
|
4448
|
-
|
4457
|
+
w = e.sent;
|
4449
4458
|
case 15:
|
4450
4459
|
A.logInfoObject({
|
4451
|
-
apiResult:
|
4460
|
+
apiResult: w,
|
4452
4461
|
dataSyncADM: n,
|
4453
4462
|
apiResultSyncADM: o
|
4454
4463
|
}, "Retry: Không tìm thấy người bệnh"), e.next = 21;
|
@@ -4466,104 +4475,117 @@
|
|
4466
4475
|
return function() {
|
4467
4476
|
return e.apply(this, arguments)
|
4468
4477
|
}
|
4469
|
-
}(),
|
4470
|
-
SyncADM:
|
4471
|
-
}, e.prev =
|
4472
|
-
e.next =
|
4478
|
+
}(), V = {
|
4479
|
+
SyncADM: Z
|
4480
|
+
}, e.prev = 70, !0 !== G) {
|
4481
|
+
e.next = 92;
|
4473
4482
|
break
|
4474
4483
|
}
|
4475
|
-
|
4476
|
-
case
|
4477
|
-
if (!(
|
4478
|
-
e.next =
|
4484
|
+
w = [], J = 0;
|
4485
|
+
case 74:
|
4486
|
+
if (!(J < u.length)) {
|
4487
|
+
e.next = 90;
|
4479
4488
|
break
|
4480
4489
|
}
|
4481
|
-
return e.prev =
|
4482
|
-
case
|
4483
|
-
e.t3 = e.sent, e.t2.push.call(e.t2, e.t3), e.next =
|
4490
|
+
return e.prev = 75, e.t2 = w, e.next = 79, m.sendData(u[J]);
|
4491
|
+
case 79:
|
4492
|
+
e.t3 = e.sent, e.t2.push.call(e.t2, e.t3), e.next = 87;
|
4484
4493
|
break;
|
4485
|
-
case
|
4486
|
-
e.prev =
|
4487
|
-
case
|
4488
|
-
|
4494
|
+
case 83:
|
4495
|
+
e.prev = 83, e.t4 = e.catch(75), A.logError(e.t4, "mutiRequests"), null !== e.t4 && void 0 !== e.t4 && null !== ($ = e.t4.response) && void 0 !== $ && $.data ? w.push(e.t4.response.data) : w.push(e.t4.message);
|
4496
|
+
case 87:
|
4497
|
+
J++, e.next = 74;
|
4489
4498
|
break;
|
4490
|
-
case
|
4491
|
-
e.next =
|
4499
|
+
case 90:
|
4500
|
+
e.next = 101;
|
4492
4501
|
break;
|
4493
|
-
case
|
4494
|
-
return e.next =
|
4502
|
+
case 92:
|
4503
|
+
return e.next = 94, m.sendData({
|
4495
4504
|
method: d,
|
4496
4505
|
data: p,
|
4497
4506
|
pathApi: i
|
4498
4507
|
});
|
4499
|
-
case
|
4500
|
-
|
4501
|
-
|
4502
|
-
|
4508
|
+
case 94:
|
4509
|
+
if (w = e.sent, !(i + "").includes("CUTPParaClinRequestOUT") && !(i + "").includes("DTPParaClinRequestOUT")) {
|
4510
|
+
e.next = 101;
|
4511
|
+
break
|
4512
|
+
}
|
4513
|
+
return w.dataSaveTPParaClinRequestOUT = {
|
4514
|
+
ParaClinReqCode: S,
|
4515
|
+
EmpCode: T
|
4516
|
+
}, w.methodSaveTPParaClinRequestOUT = "POST", e.next = 100, m.sendData({
|
4517
|
+
method: w.methodSaveTPParaClinRequestOUT,
|
4518
|
+
data: w.dataSaveTPParaClinRequestOUT,
|
4519
|
+
pathApi: "server/his-server/api/Connect/SaveTPParaClinRequestOUT"
|
4520
|
+
});
|
4521
|
+
case 100:
|
4522
|
+
w.apiResultSaveTPParaClinRequestOUT = e.sent;
|
4523
|
+
case 101:
|
4524
|
+
e.next = 108;
|
4503
4525
|
break;
|
4504
|
-
case
|
4505
|
-
return e.prev =
|
4506
|
-
case
|
4507
|
-
return e.prev =
|
4508
|
-
case
|
4509
|
-
if ("Không tìm thấy người bệnh" !==
|
4510
|
-
e.next =
|
4526
|
+
case 103:
|
4527
|
+
return e.prev = 103, e.t5 = e.catch(70), null !== e.t5 && void 0 !== e.t5 && null !== (K = e.t5.response) && void 0 !== K && K.data && (w = e.t5.response.data), e.next = 108, y.markRetry(t.notification_id);
|
4528
|
+
case 108:
|
4529
|
+
return e.prev = 108, e.finish(108);
|
4530
|
+
case 110:
|
4531
|
+
if ("Không tìm thấy người bệnh" !== w && "Không tìm thấy thông tin người bệnh" !== w) {
|
4532
|
+
e.next = 116;
|
4511
4533
|
break
|
4512
4534
|
}
|
4513
|
-
return e.next =
|
4514
|
-
case
|
4515
|
-
return e.next =
|
4535
|
+
return e.next = 113, V.SyncADM();
|
4536
|
+
case 113:
|
4537
|
+
return e.next = 115, m.sendData({
|
4516
4538
|
data: p,
|
4517
4539
|
pathApi: i
|
4518
4540
|
});
|
4519
|
-
case
|
4520
|
-
|
4521
|
-
case
|
4522
|
-
if (!0 !== m.ResOK(
|
4523
|
-
e.next =
|
4541
|
+
case 115:
|
4542
|
+
w = e.sent;
|
4543
|
+
case 116:
|
4544
|
+
if (!0 !== m.ResOK(w)) {
|
4545
|
+
e.next = 121;
|
4524
4546
|
break
|
4525
4547
|
}
|
4526
|
-
return e.next =
|
4527
|
-
case
|
4528
|
-
e.next =
|
4548
|
+
return e.next = 119, y.markProcessed(t.notification_id);
|
4549
|
+
case 119:
|
4550
|
+
e.next = 123;
|
4529
4551
|
break;
|
4530
|
-
case
|
4531
|
-
return e.next =
|
4532
|
-
case
|
4552
|
+
case 121:
|
4553
|
+
return e.next = 123, y.markRetry(t.notification_id);
|
4554
|
+
case 123:
|
4533
4555
|
A.logInfoObject({
|
4534
|
-
apiResult:
|
4556
|
+
apiResult: w,
|
4535
4557
|
data: p,
|
4536
4558
|
pathApi: i,
|
4537
4559
|
payload: t,
|
4538
4560
|
msg: n,
|
4539
|
-
isCancelHandleNotification:
|
4540
|
-
}), e.next =
|
4561
|
+
isCancelHandleNotification: x
|
4562
|
+
}), e.next = 129;
|
4541
4563
|
break;
|
4542
|
-
case
|
4543
|
-
e.prev =
|
4544
|
-
case
|
4545
|
-
return e.prev =
|
4564
|
+
case 126:
|
4565
|
+
e.prev = 126, e.t6 = e.catch(6), A.logError(e.t6, "handleNotification");
|
4566
|
+
case 129:
|
4567
|
+
return e.prev = 129, !0 !== x && (Q = {
|
4546
4568
|
table_name: o,
|
4547
4569
|
operation: l,
|
4548
4570
|
payload: r(r({}, p), {}, {
|
4549
4571
|
extra: t
|
4550
4572
|
}),
|
4551
4573
|
pathApi: i,
|
4552
|
-
resultApi:
|
4574
|
+
resultApi: w,
|
4553
4575
|
maba: h,
|
4554
4576
|
mabn: _,
|
4555
4577
|
makb: W,
|
4556
4578
|
type: "HISEMR"
|
4557
|
-
}, y.insertBenhNhanSynced(
|
4558
|
-
case
|
4579
|
+
}, y.insertBenhNhanSynced(Q)), e.finish(129);
|
4580
|
+
case 132:
|
4559
4581
|
case "end":
|
4560
4582
|
return e.stop()
|
4561
4583
|
}
|
4562
|
-
var
|
4584
|
+
var Z
|
4563
4585
|
}), e, null, [
|
4564
|
-
[
|
4565
|
-
[
|
4566
|
-
[
|
4586
|
+
[6, 126, 129, 132],
|
4587
|
+
[70, 103, 108, 110],
|
4588
|
+
[75, 83]
|
4567
4589
|
])
|
4568
4590
|
})));
|
4569
4591
|
return function(n) {
|
@@ -4656,7 +4678,7 @@
|
|
4656
4678
|
return s().wrap((function(e) {
|
4657
4679
|
for (;;) switch (e.prev = e.next) {
|
4658
4680
|
case 0:
|
4659
|
-
if (a = n[p], A.logInfo("➡️ Sync danh mục: ".concat(a)), c = void 0 === (i = (r = {}).functionName) ? "" : i, b = void 0 === (M = r.pathApi) ? "" : M, "current.dmxa4750-tinh" === a ? (c = "badt_dhs.GetSyncCityProvince", void(b = "server/his-server/api/SyncData/SyncCityProvince")) : "current.dmxa4750-huyen" === a ? (c = "badt_dhs.GetSyncDistrict", void(b = "server/his-server/api/SyncData/SyncDistrict")) : "current.dmxa4750-xa" === a ? (c = "badt_dhs.GetSyncWard", void(b = "server/his-server/api/SyncData/SyncWard")) : (c = h.pgTableListener[a].name, void(b =
|
4681
|
+
if (a = n[p], A.logInfo("➡️ Sync danh mục: ".concat(a)), c = void 0 === (i = (r = {}).functionName) ? "" : i, b = void 0 === (M = r.pathApi) ? "" : M, "current.dmxa4750-tinh" === a ? (c = "badt_dhs.GetSyncCityProvince", void(b = "server/his-server/api/SyncData/SyncCityProvince")) : "current.dmxa4750-huyen" === a ? (c = "badt_dhs.GetSyncDistrict", void(b = "server/his-server/api/SyncData/SyncDistrict")) : "current.dmxa4750-xa" === a ? (c = "badt_dhs.GetSyncWard", void(b = "server/his-server/api/SyncData/SyncWard")) : (c = h.pgTableListener[a].name, void(b = q[a])), l = d.join(o, "".concat(a, ".success.json")), e.prev = 5, !0 === z.existsSync(l)) {
|
4660
4682
|
e.next = 25;
|
4661
4683
|
break
|
4662
4684
|
}
|
@@ -4699,7 +4721,7 @@
|
|
4699
4721
|
apiResult: O,
|
4700
4722
|
pathApi: b,
|
4701
4723
|
pgData: u,
|
4702
|
-
error:
|
4724
|
+
error: f.stringifyForceEmpty(e.t0)
|
4703
4725
|
}, null, 2));
|
4704
4726
|
case 34:
|
4705
4727
|
return e.prev = 34, A.logInfo(t[a]), e.finish(34);
|
@@ -4749,7 +4771,7 @@
|
|
4749
4771
|
fail: 0,
|
4750
4772
|
dsFails: []
|
4751
4773
|
} : i, M = n.err, O = S("syncBnnoitru"), e.prev = 2, A.logInfo("➡️ GetPgData: Bnnoitru"), e.next = 6, b(s().mark((function e() {
|
4752
|
-
var n, t, a, i, M, u, l, h,
|
4774
|
+
var n, t, a, i, M, u, l, h, q, f, _;
|
4753
4775
|
return s().wrap((function(e) {
|
4754
4776
|
for (;;) switch (e.prev = e.next) {
|
4755
4777
|
case 0:
|
@@ -4792,7 +4814,7 @@
|
|
4792
4814
|
e.next = 42;
|
4793
4815
|
break
|
4794
4816
|
}
|
4795
|
-
if (i = r[a], M = i.mabn, u = i.makb, l = i.maba, h = "".concat(M, "-").concat(u, "-").concat(l),
|
4817
|
+
if (i = r[a], M = i.mabn, u = i.makb, l = i.maba, h = "".concat(M, "-").concat(u, "-").concat(l), q = d.join(O, "".concat(h, ".success.json")), A.logInfo("➡️ SyncData: Bnnoitru [".concat(a + 1, "/").concat(r.length, "]:").concat(h)), !0 !== z.existsSync(q)) {
|
4796
4818
|
e.next = 25;
|
4797
4819
|
break
|
4798
4820
|
}
|
@@ -4803,22 +4825,22 @@
|
|
4803
4825
|
return JSON.parse(n[Object.keys(n)[0]])
|
4804
4826
|
}));
|
4805
4827
|
case 27:
|
4806
|
-
return r[a] = e.sent,
|
4828
|
+
return r[a] = e.sent, f = void 0, e.prev = 29, e.next = 32, m.sendData({
|
4807
4829
|
pathApi: o,
|
4808
4830
|
data: r[a]
|
4809
4831
|
});
|
4810
4832
|
case 32:
|
4811
|
-
|
4833
|
+
f = e.sent, e.next = 38;
|
4812
4834
|
break;
|
4813
4835
|
case 35:
|
4814
|
-
e.prev = 35, e.t0 = e.catch(29),
|
4836
|
+
e.prev = 35, e.t0 = e.catch(29), f = null !== e.t0 && void 0 !== e.t0 && null !== (_ = e.t0.response) && void 0 !== _ && _.data ? e.t0.response.data : e.t0;
|
4815
4837
|
case 38:
|
4816
|
-
!0 === m.ResOK(
|
4817
|
-
apiResult:
|
4838
|
+
!0 === m.ResOK(f) ? (c.success++, z.writeFileSync(q, JSON.stringify({
|
4839
|
+
apiResult: f,
|
4818
4840
|
pgData: r[a]
|
4819
4841
|
}, null, 2))) : (c.fail++, c.dsFails.push({
|
4820
4842
|
data: r[a],
|
4821
|
-
apiResult:
|
4843
|
+
apiResult: f
|
4822
4844
|
}));
|
4823
4845
|
case 39:
|
4824
4846
|
a++, e.next = 18;
|
@@ -4840,7 +4862,7 @@
|
|
4840
4862
|
return e.prev = 13, z.writeFileSync(d.join(O, "bnnoitru.json"), JSON.stringify({
|
4841
4863
|
status: c,
|
4842
4864
|
pgData: r,
|
4843
|
-
error:
|
4865
|
+
error: f.stringifyForceEmpty(M),
|
4844
4866
|
pathApi: o,
|
4845
4867
|
pgFunctionName: p
|
4846
4868
|
}, null, 2)), A.logInfoObject(c, "🔚 Sync Bnnoitru 🔚"), e.finish(13);
|
@@ -4950,7 +4972,7 @@
|
|
4950
4972
|
return e.prev = 16, z.writeFileSync(d.join(O, "psdangkySyncDCHG-".concat(c.NGAYDK, ".json")), JSON.stringify({
|
4951
4973
|
status: c,
|
4952
4974
|
pgData: r,
|
4953
|
-
error:
|
4975
|
+
error: f.stringifyForceEmpty(M),
|
4954
4976
|
pathApi: o,
|
4955
4977
|
pgFunctionName: p
|
4956
4978
|
}, null, 2)), A.logInfoObject(c, "🔚 Sync psdangkySyncDCHG 🔚"), e.finish(16);
|
@@ -5720,10 +5742,10 @@
|
|
5720
5742
|
return (n > 0 ? "-" : "+") + m(Math.floor(Math.abs(n) / 60), 2) + ":" + m(Math.abs(n) % 60, 2)
|
5721
5743
|
}
|
5722
5744
|
},
|
5723
|
-
|
5745
|
+
q = function(e) {
|
5724
5746
|
return +e - 1
|
5725
5747
|
},
|
5726
|
-
|
5748
|
+
f = [null, a],
|
5727
5749
|
_ = [null, r],
|
5728
5750
|
W = ["isPm", r, function(e, n) {
|
5729
5751
|
var t = e.toLowerCase();
|
@@ -5743,8 +5765,8 @@
|
|
5743
5765
|
Do: ["day", a + r, function(e) {
|
5744
5766
|
return parseInt(e, 10)
|
5745
5767
|
}],
|
5746
|
-
M: ["month", a,
|
5747
|
-
MM: ["month", p,
|
5768
|
+
M: ["month", a, q],
|
5769
|
+
MM: ["month", p, q],
|
5748
5770
|
YY: ["year", p, function(e) {
|
5749
5771
|
var n = +("" + (new Date).getFullYear()).substr(0, 2);
|
5750
5772
|
return +("" + (+e > 68 ? n - 1 : n) + e)
|
@@ -5765,8 +5787,8 @@
|
|
5765
5787
|
return 10 * +e
|
5766
5788
|
}],
|
5767
5789
|
SSS: ["millisecond", "\\d{3}"],
|
5768
|
-
d:
|
5769
|
-
dd:
|
5790
|
+
d: f,
|
5791
|
+
dd: f,
|
5770
5792
|
ddd: _,
|
5771
5793
|
dddd: _,
|
5772
5794
|
MMM: ["month", r, s("monthNamesShort")],
|
@@ -5844,10 +5866,10 @@
|
|
5844
5866
|
for (var d, O = M(M({}, u), t), l = 1; l < z.length; l++) {
|
5845
5867
|
var m = p[l - 1],
|
5846
5868
|
h = m[0],
|
5847
|
-
|
5848
|
-
|
5849
|
-
if (null ==
|
5850
|
-
a[h] =
|
5869
|
+
q = m[2],
|
5870
|
+
f = q ? q(z[l], O) : +z[l];
|
5871
|
+
if (null == f) return null;
|
5872
|
+
a[h] = f
|
5851
5873
|
}
|
5852
5874
|
if (1 === a.isPm && null != a.hour && 12 != +a.hour ? a.hour = +a.hour + 12 : 0 === a.isPm && 12 == +a.hour && (a.hour = 0), null == a.timezoneOffset) {
|
5853
5875
|
d = new Date(a.year, a.month, a.day, a.hour, a.minute, a.second, a.millisecond);
|
@@ -6033,11 +6055,11 @@
|
|
6033
6055
|
var m = e.date_format || M;
|
6034
6056
|
n && "daily" == n.type && (e.date_format || (m = "YYYY-MM-DD"), p().format(m) == p().endOf("day").format(m) && p().format(m) != p().add(1, "day").format(m) || (b.verbose && console.log(new Date, "[FileStreamRotator] Changing type to custom as date format changes more often than once a day or not every day"), n.type = "custom")), n && (r = e.frequency ? b.getDate(n, m, e.utc) : ""), e.create_symlink = e.create_symlink || !1, e.extension = e.extension || "";
|
6035
6057
|
var h = e.filename,
|
6036
|
-
|
6037
|
-
|
6038
|
-
if (h.match(/%DATE%/) && (
|
6058
|
+
q = null,
|
6059
|
+
f = h + (r ? "." + r : "");
|
6060
|
+
if (h.match(/%DATE%/) && (f = h.replace(/%DATE%/g, r || b.getDate(null, m, e.utc))), u) {
|
6039
6061
|
var _ = null,
|
6040
|
-
W =
|
6062
|
+
W = f;
|
6041
6063
|
if (O && O.files && O.files instanceof Array && O.files.length > 0) {
|
6042
6064
|
var L = O.files[O.files.length - 1].name;
|
6043
6065
|
if (L.match(W)) {
|
@@ -6045,18 +6067,18 @@
|
|
6045
6067
|
g && (W = L, l = g[1])
|
6046
6068
|
}
|
6047
6069
|
}
|
6048
|
-
for (0 == l && W ==
|
6070
|
+
for (0 == l && W == f && (W += e.extension); o.existsSync(W);) _ = W, l++, W = f + "." + l + e.extension;
|
6049
6071
|
if (_) {
|
6050
6072
|
var y = o.statSync(_);
|
6051
6073
|
y.size < u && (W = _, l--, A = y.size)
|
6052
6074
|
}
|
6053
|
-
|
6054
|
-
} else
|
6055
|
-
b.verbose && console.log(new Date, "[FileStreamRotator] Logging to: ",
|
6075
|
+
f = W
|
6076
|
+
} else f += e.extension;
|
6077
|
+
b.verbose && console.log(new Date, "[FileStreamRotator] Logging to: ", f), z(f);
|
6056
6078
|
var R = e.file_options || {
|
6057
6079
|
flags: "a"
|
6058
6080
|
},
|
6059
|
-
v = o.createWriteStream(
|
6081
|
+
v = o.createWriteStream(f, R);
|
6060
6082
|
if (r && n && s.indexOf(n.type) > -1 || u > 0) {
|
6061
6083
|
b.verbose && console.log(new Date, "[FileStreamRotator] Rotating file: ", n ? n.type : "", u ? "size: " + u : "");
|
6062
6084
|
var N, T = new i;
|
@@ -6107,15 +6129,15 @@
|
|
6107
6129
|
var i = n ? this.getDate(n, m, e.utc) : r;
|
6108
6130
|
if (i != r || u && A > u) {
|
6109
6131
|
var c = h + (r && n ? "." + i : "");
|
6110
|
-
h.match(/%DATE%/) && r && (c = h.replace(/%DATE%/g, i)), u && A > u ? c += "." + ++l + e.extension : (l = 0, c += e.extension), A = 0, b.verbose && console.log(new Date, t(9023).format("[FileStreamRotator] Changing logs from %s to %s",
|
6132
|
+
h.match(/%DATE%/) && r && (c = h.replace(/%DATE%/g, i)), u && A > u ? c += "." + ++l + e.extension : (l = 0, c += e.extension), A = 0, b.verbose && console.log(new Date, t(9023).format("[FileStreamRotator] Changing logs from %s to %s", f, c)), r = i, q = f, f = c, !0 === e.end_stream ? v.end() : v.destroy(), z(f), v = o.createWriteStream(c, R), T.emit("new", c), T.emit("rotate", q, c), d(v, T)
|
6111
6133
|
}
|
6112
6134
|
v.write(a, p), A += Buffer.byteLength(a, p)
|
6113
6135
|
}.bind(this), process.nextTick((function() {
|
6114
|
-
T.emit("new",
|
6115
|
-
})), T.emit("new",
|
6136
|
+
T.emit("new", f)
|
6137
|
+
})), T.emit("new", f), T
|
6116
6138
|
}
|
6117
6139
|
return b.verbose && console.log(new Date, "[FileStreamRotator] File won't be rotated: ", e.frequency, e.size), process.nextTick((function() {
|
6118
|
-
v.emit("new",
|
6140
|
+
v.emit("new", f)
|
6119
6141
|
})), v
|
6120
6142
|
};
|
6121
6143
|
var z = function(e) {
|
@@ -6190,8 +6212,8 @@
|
|
6190
6212
|
var A = T("ERR_INVALID_URL", "Invalid URL", TypeError),
|
6191
6213
|
m = T("ERR_FR_REDIRECTION_FAILURE", "Redirected request failed"),
|
6192
6214
|
h = T("ERR_FR_TOO_MANY_REDIRECTS", "Maximum number of redirects exceeded", m),
|
6193
|
-
|
6194
|
-
|
6215
|
+
q = T("ERR_FR_MAX_BODY_LENGTH_EXCEEDED", "Request body larger than maxBodyLength limit"),
|
6216
|
+
f = T("ERR_STREAM_WRITE_AFTER_END", "write after end"),
|
6195
6217
|
_ = M.prototype.destroy || g;
|
6196
6218
|
|
6197
6219
|
function W(e, n) {
|
@@ -6312,13 +6334,13 @@
|
|
6312
6334
|
}, W.prototype.destroy = function(e) {
|
6313
6335
|
return E(this._currentRequest, e), _.call(this, e), this
|
6314
6336
|
}, W.prototype.write = function(e, n, t) {
|
6315
|
-
if (this._ending) throw new
|
6337
|
+
if (this._ending) throw new f;
|
6316
6338
|
if (!S(e) && ("object" != typeof(o = e) || !("length" in o))) throw new TypeError("data should be a string, Buffer or Uint8Array");
|
6317
6339
|
var o;
|
6318
6340
|
x(n) && (t = n, n = null), 0 !== e.length ? this._requestBodyLength + e.length <= this._options.maxBodyLength ? (this._requestBodyLength += e.length, this._requestBodyBuffers.push({
|
6319
6341
|
data: e,
|
6320
6342
|
encoding: n
|
6321
|
-
}), this._currentRequest.write(e, n, t)) : (this.emit("error", new
|
6343
|
+
}), this._currentRequest.write(e, n, t)) : (this.emit("error", new q), this.abort()) : t && t()
|
6322
6344
|
}, W.prototype.end = function(e, n, t) {
|
6323
6345
|
if (x(e) ? (t = e, e = n = null) : x(n) && (t = n, n = null), e) {
|
6324
6346
|
var o = this,
|
@@ -6418,12 +6440,12 @@
|
|
6418
6440
|
headers: e.headers,
|
6419
6441
|
statusCode: n
|
6420
6442
|
},
|
6421
|
-
|
6443
|
+
q = {
|
6422
6444
|
url: l,
|
6423
6445
|
method: p,
|
6424
6446
|
headers: t
|
6425
6447
|
};
|
6426
|
-
a(this._options, m,
|
6448
|
+
a(this._options, m, q), this._sanitizeOptions(this._options)
|
6427
6449
|
}
|
6428
6450
|
this._performRequest()
|
6429
6451
|
}, e.exports = L({
|
@@ -6619,22 +6641,22 @@
|
|
6619
6641
|
A = t(414),
|
6620
6642
|
m = t(3093),
|
6621
6643
|
h = Function,
|
6622
|
-
|
6644
|
+
q = function(e) {
|
6623
6645
|
try {
|
6624
6646
|
return h('"use strict"; return (' + e + ").constructor;")()
|
6625
6647
|
} catch (e) {}
|
6626
6648
|
},
|
6627
|
-
|
6649
|
+
f = t(5795),
|
6628
6650
|
_ = t(655),
|
6629
6651
|
W = function() {
|
6630
6652
|
throw new M
|
6631
6653
|
},
|
6632
|
-
L =
|
6654
|
+
L = f ? function() {
|
6633
6655
|
try {
|
6634
6656
|
return W
|
6635
6657
|
} catch (e) {
|
6636
6658
|
try {
|
6637
|
-
return
|
6659
|
+
return f(arguments, "callee").get
|
6638
6660
|
} catch (e) {
|
6639
6661
|
return W
|
6640
6662
|
}
|
@@ -6691,7 +6713,7 @@
|
|
6691
6713
|
"%Math%": Math,
|
6692
6714
|
"%Number%": Number,
|
6693
6715
|
"%Object%": a,
|
6694
|
-
"%Object.getOwnPropertyDescriptor%":
|
6716
|
+
"%Object.getOwnPropertyDescriptor%": f,
|
6695
6717
|
"%parseFloat%": parseFloat,
|
6696
6718
|
"%parseInt%": parseInt,
|
6697
6719
|
"%Promise%": "undefined" == typeof Promise ? o : Promise,
|
@@ -6739,9 +6761,9 @@
|
|
6739
6761
|
}
|
6740
6762
|
var k = function e(n) {
|
6741
6763
|
var t;
|
6742
|
-
if ("%AsyncFunction%" === n) t =
|
6743
|
-
else if ("%GeneratorFunction%" === n) t =
|
6744
|
-
else if ("%AsyncGeneratorFunction%" === n) t =
|
6764
|
+
if ("%AsyncFunction%" === n) t = q("async function () {}");
|
6765
|
+
else if ("%GeneratorFunction%" === n) t = q("function* () {}");
|
6766
|
+
else if ("%AsyncGeneratorFunction%" === n) t = q("async function* () {}");
|
6745
6767
|
else if ("%AsyncGenerator%" === n) {
|
6746
6768
|
var o = e("%AsyncGeneratorFunction%");
|
6747
6769
|
o && (t = o.prototype)
|
@@ -6859,8 +6881,8 @@
|
|
6859
6881
|
if (!n) throw new M("base intrinsic for " + e + " exists, but the property is not available.");
|
6860
6882
|
return
|
6861
6883
|
}
|
6862
|
-
if (
|
6863
|
-
var l =
|
6884
|
+
if (f && b + 1 >= t.length) {
|
6885
|
+
var l = f(r, d);
|
6864
6886
|
r = (z = !!l) && "get" in l && !("originalValue" in l.get) ? l.get : r[d]
|
6865
6887
|
} else z = C(r, d), r = r[d];
|
6866
6888
|
z && !i && (x[p] = r)
|
@@ -7545,11 +7567,11 @@
|
|
7545
7567
|
return e
|
7546
7568
|
}
|
7547
7569
|
|
7548
|
-
function
|
7570
|
+
function q(e, n) {
|
7549
7571
|
return e.offsetScore !== n.offsetScore ? e.offsetScore - n.offsetScore : e.abbrScore !== n.abbrScore ? e.abbrScore - n.abbrScore : e.zone.population !== n.zone.population ? n.zone.population - e.zone.population : n.zone.name.localeCompare(e.zone.name)
|
7550
7572
|
}
|
7551
7573
|
|
7552
|
-
function
|
7574
|
+
function f(e, n) {
|
7553
7575
|
var t, o;
|
7554
7576
|
for (z(n), t = 0; t < n.length; t++) o = n[t], r[o] = r[o] || {}, r[o][e] = !0
|
7555
7577
|
}
|
@@ -7592,7 +7614,7 @@
|
|
7592
7614
|
for (t = new m(y(c[o]), i), a = 0; a < i; a++) t.scoreOffsetAt(r[a]);
|
7593
7615
|
s.push(t)
|
7594
7616
|
}
|
7595
|
-
return s.sort(
|
7617
|
+
return s.sort(q), s.length > 0 ? s[0].zone.name : void 0
|
7596
7618
|
}
|
7597
7619
|
|
7598
7620
|
function L(e) {
|
@@ -7601,7 +7623,7 @@
|
|
7601
7623
|
|
7602
7624
|
function g(e) {
|
7603
7625
|
var n, o, a, r;
|
7604
|
-
for ("string" == typeof e && (e = [e]), n = 0; n < e.length; n++) r = L(o = (a = e[n].split("|"))[0]), t[r] = e[n], p[r] = o,
|
7626
|
+
for ("string" == typeof e && (e = [e]), n = 0; n < e.length; n++) r = L(o = (a = e[n].split("|"))[0]), t[r] = e[n], p[r] = o, f(r, a[2].split(" "))
|
7605
7627
|
}
|
7606
7628
|
|
7607
7629
|
function y(e, n) {
|
@@ -18148,18 +18170,18 @@
|
|
18148
18170
|
if (n in t && e.call(this, t[n], n, t)) return !0;
|
18149
18171
|
return !1
|
18150
18172
|
};
|
18151
|
-
var
|
18152
|
-
|
18173
|
+
var q = a.momentProperties = [],
|
18174
|
+
f = !1;
|
18153
18175
|
|
18154
18176
|
function _(e, n) {
|
18155
|
-
var t, o, a, p =
|
18177
|
+
var t, o, a, p = q.length;
|
18156
18178
|
if (M(n._isAMomentObject) || (e._isAMomentObject = n._isAMomentObject), M(n._i) || (e._i = n._i), M(n._f) || (e._f = n._f), M(n._l) || (e._l = n._l), M(n._strict) || (e._strict = n._strict), M(n._tzm) || (e._tzm = n._tzm), M(n._isUTC) || (e._isUTC = n._isUTC), M(n._offset) || (e._offset = n._offset), M(n._pf) || (e._pf = A(n)), M(n._locale) || (e._locale = n._locale), p > 0)
|
18157
|
-
for (t = 0; t < p; t++) M(a = n[o =
|
18179
|
+
for (t = 0; t < p; t++) M(a = n[o = q[t]]) || (e[o] = a);
|
18158
18180
|
return e
|
18159
18181
|
}
|
18160
18182
|
|
18161
18183
|
function W(e) {
|
18162
|
-
_(this, e), this._d = new Date(null != e._d ? e._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), !1 ===
|
18184
|
+
_(this, e), this._d = new Date(null != e._d ? e._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), !1 === f && (f = !0, a.updateOffset(this), f = !1)
|
18163
18185
|
}
|
18164
18186
|
|
18165
18187
|
function L(e) {
|
@@ -18437,8 +18459,8 @@
|
|
18437
18459
|
Ae = /\d{1,4}/,
|
18438
18460
|
me = /[+-]?\d{1,6}/,
|
18439
18461
|
he = /\d+/,
|
18440
|
-
|
18441
|
-
|
18462
|
+
qe = /[+-]?\d+/,
|
18463
|
+
fe = /Z|[+-]\d\d:?\d\d/gi,
|
18442
18464
|
_e = /Z|[+-]\d\d(?::?\d\d)?/gi,
|
18443
18465
|
We = /[+-]?\d+(\.\d{1,3})?/,
|
18444
18466
|
Le = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,
|
@@ -18515,7 +18537,7 @@
|
|
18515
18537
|
return e <= 9999 ? D(e, 4) : "+" + e
|
18516
18538
|
})), j(0, ["YY", 2], 0, (function() {
|
18517
18539
|
return this.year() % 100
|
18518
|
-
})), j(0, ["YYYY", 4], 0, "year"), j(0, ["YYYYY", 5], 0, "year"), j(0, ["YYYYYY", 6, !0], 0, "year"), Re("Y",
|
18540
|
+
})), j(0, ["YYYY", 4], 0, "year"), j(0, ["YYYYY", 5], 0, "year"), j(0, ["YYYYYY", 6, !0], 0, "year"), Re("Y", qe), Re("YY", de, se), Re("YYYY", Ae, be), Re("YYYYY", me, ze), Re("YYYYYY", me, ze), we(["YYYYY", "YYYYYY"], Ce), we("YYYY", (function(e, n) {
|
18519
18541
|
n[Ce] = 2 === e.length ? a.parseTwoDigitYear(e) : Se(e)
|
18520
18542
|
})), we("YY", (function(e, n) {
|
18521
18543
|
n[Ce] = a.parseTwoDigitYear(e)
|
@@ -18696,19 +18718,19 @@
|
|
18696
18718
|
p.sort(e), r.sort(e), i.sort(e), this._monthsRegex = new RegExp("^(" + i.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + r.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + p.join("|") + ")", "i")
|
18697
18719
|
}
|
18698
18720
|
|
18699
|
-
function
|
18721
|
+
function qn(e, n, t, o, a, p, r) {
|
18700
18722
|
var i;
|
18701
18723
|
return e < 100 && e >= 0 ? (i = new Date(e + 400, n, t, o, a, p, r), isFinite(i.getFullYear()) && i.setFullYear(e)) : i = new Date(e, n, t, o, a, p, r), i
|
18702
18724
|
}
|
18703
18725
|
|
18704
|
-
function
|
18726
|
+
function fn(e) {
|
18705
18727
|
var n, t;
|
18706
18728
|
return e < 100 && e >= 0 ? ((t = Array.prototype.slice.call(arguments))[0] = e + 400, n = new Date(Date.UTC.apply(null, t)), isFinite(n.getUTCFullYear()) && n.setUTCFullYear(e)) : n = new Date(Date.UTC.apply(null, arguments)), n
|
18707
18729
|
}
|
18708
18730
|
|
18709
18731
|
function _n(e, n, t) {
|
18710
18732
|
var o = 7 + n - t;
|
18711
|
-
return -(7 +
|
18733
|
+
return -(7 + fn(e, 0, o).getUTCDay() - n) % 7 + o - 1
|
18712
18734
|
}
|
18713
18735
|
|
18714
18736
|
function Wn(e, n, t, o, a) {
|
@@ -19029,11 +19051,11 @@
|
|
19029
19051
|
return dt(e)
|
19030
19052
|
}
|
19031
19053
|
|
19032
|
-
function
|
19054
|
+
function qt() {
|
19033
19055
|
return R(st)
|
19034
19056
|
}
|
19035
19057
|
|
19036
|
-
function
|
19058
|
+
function ft(e) {
|
19037
19059
|
var n, t = e._a;
|
19038
19060
|
return t && -2 === A(e).overflow && (n = t[Xe] < 0 || t[Xe] > 11 ? Xe : t[Ye] < 1 || t[Ye] > on(t[Ce], t[Xe]) ? Ye : t[je] < 0 || t[je] > 24 || 24 === t[je] && (0 !== t[Pe] || 0 !== t[Ie] || 0 !== t[He]) ? je : t[Pe] < 0 || t[Pe] > 59 ? Pe : t[Ie] < 0 || t[Ie] > 59 ? Ie : t[He] < 0 || t[He] > 999 ? He : -1, A(e)._overflowDayOfYear && (n < Ce || n > Ye) && (n = Ye), A(e)._overflowWeeks && -1 === n && (n = Fe), A(e)._overflowWeekday && -1 === n && (n = Ue), A(e).overflow = n), e
|
19039
19061
|
}
|
@@ -19138,7 +19160,7 @@
|
|
19138
19160
|
var n, t = vt.exec(xt(e._i));
|
19139
19161
|
if (t) {
|
19140
19162
|
if (n = Et(t[4], t[3], t[2], t[5], t[6], t[7]), !wt(t[1], n, e)) return;
|
19141
|
-
e._a = n, e._tzm = kt(t[8], t[9], t[10]), e._d =
|
19163
|
+
e._a = n, e._tzm = kt(t[8], t[9], t[10]), e._d = fn.apply(null, e._a), e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), A(e).rfc2822 = !0
|
19142
19164
|
} else e._isValid = !1
|
19143
19165
|
}
|
19144
19166
|
|
@@ -19159,9 +19181,9 @@
|
|
19159
19181
|
function Yt(e) {
|
19160
19182
|
var n, t, o, a, p, r = [];
|
19161
19183
|
if (!e._d) {
|
19162
|
-
for (o = Xt(e), e._w && null == e._a[Ye] && null == e._a[Xe] && jt(e), null != e._dayOfYear && (p = Ct(e._a[Ce], o[Ce]), (e._dayOfYear > Ge(p) || 0 === e._dayOfYear) && (A(e)._overflowDayOfYear = !0), t =
|
19184
|
+
for (o = Xt(e), e._w && null == e._a[Ye] && null == e._a[Xe] && jt(e), null != e._dayOfYear && (p = Ct(e._a[Ce], o[Ce]), (e._dayOfYear > Ge(p) || 0 === e._dayOfYear) && (A(e)._overflowDayOfYear = !0), t = fn(p, 0, e._dayOfYear), e._a[Xe] = t.getUTCMonth(), e._a[Ye] = t.getUTCDate()), n = 0; n < 3 && null == e._a[n]; ++n) e._a[n] = r[n] = o[n];
|
19163
19185
|
for (; n < 7; n++) e._a[n] = r[n] = null == e._a[n] ? 2 === n ? 1 : 0 : e._a[n];
|
19164
|
-
24 === e._a[je] && 0 === e._a[Pe] && 0 === e._a[Ie] && 0 === e._a[He] && (e._nextDay = !0, e._a[je] = 0), e._d = (e._useUTC ?
|
19186
|
+
24 === e._a[je] && 0 === e._a[Pe] && 0 === e._a[Ie] && 0 === e._a[He] && (e._nextDay = !0, e._a[je] = 0), e._d = (e._useUTC ? fn : qn).apply(null, r), a = e._useUTC ? e._d.getUTCDay() : e._d.getDay(), null != e._tzm && e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), e._nextDay && (e._a[je] = 24), e._w && void 0 !== e._w.d && e._w.d !== a && (A(e).weekdayMismatch = !0)
|
19165
19187
|
}
|
19166
19188
|
}
|
19167
19189
|
|
@@ -19178,7 +19200,7 @@
|
|
19178
19200
|
M = s.length,
|
19179
19201
|
b = 0;
|
19180
19202
|
for (c = (o = F(e._f, e._locale).match(B) || []).length, n = 0; n < c; n++) p = o[n], (t = (s.match(ve(p, e)) || [])[0]) && ((r = s.substr(0, s.indexOf(t))).length > 0 && A(e).unusedInput.push(r), s = s.slice(s.indexOf(t) + t.length), b += t.length), Y[p] ? (t ? A(e).empty = !1 : A(e).unusedTokens.push(p), De(p, t, e)) : e._strict && !t && A(e).unusedTokens.push(p);
|
19181
|
-
A(e).charsLeftOver = M - b, s.length > 0 && A(e).unusedInput.push(s), e._a[je] <= 12 && !0 === A(e).bigHour && e._a[je] > 0 && (A(e).bigHour = void 0), A(e).parsedDateParts = e._a.slice(0), A(e).meridiem = e._meridiem, e._a[je] = It(e._locale, e._a[je], e._meridiem), null !== (i = A(e).era) && (e._a[Ce] = e._locale.erasConvertYear(i, e._a[Ce])), Yt(e),
|
19203
|
+
A(e).charsLeftOver = M - b, s.length > 0 && A(e).unusedInput.push(s), e._a[je] <= 12 && !0 === A(e).bigHour && e._a[je] > 0 && (A(e).bigHour = void 0), A(e).parsedDateParts = e._a.slice(0), A(e).meridiem = e._meridiem, e._a[je] = It(e._locale, e._a[je], e._meridiem), null !== (i = A(e).era) && (e._a[Ce] = e._locale.erasConvertYear(i, e._a[Ce])), Yt(e), ft(e)
|
19182
19204
|
} else Dt(e);
|
19183
19205
|
else Tt(e)
|
19184
19206
|
}
|
@@ -19207,7 +19229,7 @@
|
|
19207
19229
|
}
|
19208
19230
|
|
19209
19231
|
function Ut(e) {
|
19210
|
-
var n = new W(
|
19232
|
+
var n = new W(ft(Gt(e)));
|
19211
19233
|
return n._nextDay && (n.add(1, "d"), n._nextDay = void 0), n
|
19212
19234
|
}
|
19213
19235
|
|
@@ -19216,7 +19238,7 @@
|
|
19216
19238
|
t = e._f;
|
19217
19239
|
return e._locale = e._locale || ht(e._l), null === n || void 0 === t && "" === n ? h({
|
19218
19240
|
nullInput: !0
|
19219
|
-
}) : ("string" == typeof n && (e._i = n = e._locale.preparse(n)), L(n) ? new W(
|
19241
|
+
}) : ("string" == typeof n && (e._i = n = e._locale.preparse(n)), L(n) ? new W(ft(n)) : (z(n) ? e._d = n : r(t) ? Ht(e) : t ? Pt(e) : Vt(e), m(e) || (e._d = null), e))
|
19220
19242
|
}
|
19221
19243
|
|
19222
19244
|
function Vt(e) {
|
@@ -19361,14 +19383,14 @@
|
|
19361
19383
|
return this.utcOffset(0, e)
|
19362
19384
|
}
|
19363
19385
|
|
19364
|
-
function
|
19386
|
+
function qo(e) {
|
19365
19387
|
return this._isUTC && (this.utcOffset(0, e), this._isUTC = !1, e && this.subtract(lo(this), "m")), this
|
19366
19388
|
}
|
19367
19389
|
|
19368
|
-
function
|
19390
|
+
function fo() {
|
19369
19391
|
if (null != this._tzm) this.utcOffset(this._tzm, !1, !0);
|
19370
19392
|
else if ("string" == typeof this._i) {
|
19371
|
-
var e = Oo(
|
19393
|
+
var e = Oo(fe, this._i);
|
19372
19394
|
null != e ? this.utcOffset(e) : this.utcOffset(0, !0)
|
19373
19395
|
}
|
19374
19396
|
return this
|
@@ -19730,11 +19752,11 @@
|
|
19730
19752
|
return this._d.setTime(n), a.updateOffset(this, !0), this
|
19731
19753
|
}
|
19732
19754
|
|
19733
|
-
function
|
19755
|
+
function qa() {
|
19734
19756
|
return this._d.valueOf() - 6e4 * (this._offset || 0)
|
19735
19757
|
}
|
19736
19758
|
|
19737
|
-
function
|
19759
|
+
function fa() {
|
19738
19760
|
return Math.floor(this.valueOf() / 1e3)
|
19739
19761
|
}
|
19740
19762
|
|
@@ -19929,7 +19951,7 @@
|
|
19929
19951
|
|
19930
19952
|
function Za(e, n, t, o, a) {
|
19931
19953
|
var p = Wn(e, n, t, o, a),
|
19932
|
-
r =
|
19954
|
+
r = fn(p.year, 0, p.dayOfYear);
|
19933
19955
|
return this.year(r.getUTCFullYear()), this.month(r.getUTCMonth()), this.date(r.getUTCDate()), this
|
19934
19956
|
}
|
19935
19957
|
|
@@ -19946,7 +19968,7 @@
|
|
19946
19968
|
return this.weekYear() % 100
|
19947
19969
|
})), j(0, ["GG", 2], 0, (function() {
|
19948
19970
|
return this.isoWeekYear() % 100
|
19949
|
-
})), Fa("gggg", "weekYear"), Fa("ggggg", "weekYear"), Fa("GGGG", "isoWeekYear"), Fa("GGGGG", "isoWeekYear"), Re("G",
|
19971
|
+
})), Fa("gggg", "weekYear"), Fa("ggggg", "weekYear"), Fa("GGGG", "isoWeekYear"), Fa("GGGGG", "isoWeekYear"), Re("G", qe), Re("g", qe), Re("GG", de, se), Re("gg", de, se), Re("GGGG", Ae, be), Re("gggg", Ae, be), Re("GGGGG", me, ze), Re("ggggg", me, ze), ke(["gggg", "ggggg", "GGGG", "GGGGG"], (function(e, n, t, o) {
|
19950
19972
|
n[o.substr(0, 2)] = Se(e)
|
19951
19973
|
})), ke(["gg", "GG"], (function(e, n, t, o) {
|
19952
19974
|
n[o] = a.parseTwoDigitYear(e)
|
@@ -20015,7 +20037,7 @@
|
|
20015
20037
|
}
|
20016
20038
|
Mp.add = Do, Mp.calendar = Ho, Mp.clone = Fo, Mp.diff = Qo, Mp.endOf = ha, Mp.format = oa, Mp.from = aa, Mp.fromNow = pa, Mp.to = ra, Mp.toNow = ia, Mp.get = en, Mp.invalidAt = va, Mp.isAfter = Uo, Mp.isBefore = Go, Mp.isBetween = Vo, Mp.isSame = Jo, Mp.isSameOrAfter = $o, Mp.isSameOrBefore = Ko, Mp.isValid = ya, Mp.lang = sa, Mp.locale = ca, Mp.localeData = Ma, Mp.max = Qt, Mp.min = Kt, Mp.parsingFlags = Ra, Mp.set = nn, Mp.startOf = ma, Mp.subtract = Bo, Mp.toArray = Wa, Mp.toObject = La, Mp.toDate = _a, Mp.toISOString = na, Mp.inspect = ta, "undefined" != typeof Symbol && null != Symbol.for && (Mp[Symbol.for("nodejs.util.inspect.custom")] = function() {
|
20017
20039
|
return "Moment<" + this.format() + ">"
|
20018
|
-
}), Mp.toJSON = ga, Mp.toString = ea, Mp.unix =
|
20040
|
+
}), Mp.toJSON = ga, Mp.toString = ea, Mp.unix = fa, Mp.valueOf = qa, Mp.creationData = Na, Mp.eraName = xa, Mp.eraNarrow = wa, Mp.eraAbbr = ka, Mp.eraYear = Da, Mp.year = Je, Mp.isLeapYear = $e, Mp.weekYear = Ua, Mp.isoWeekYear = Ga, Mp.quarter = Mp.quarters = ep, Mp.month = un, Mp.daysInMonth = ln, Mp.week = Mp.weeks = Tn, Mp.isoWeek = Mp.isoWeeks = En, Mp.weeksInYear = $a, Mp.weeksInWeekYear = Ka, Mp.isoWeeksInYear = Va, Mp.isoWeeksInISOWeekYear = Ja, Mp.date = np, Mp.day = Mp.days = Un, Mp.weekday = Gn, Mp.isoWeekday = Vn, Mp.dayOfYear = tp, Mp.hour = Mp.hours = pt, Mp.minute = Mp.minutes = op, Mp.second = Mp.seconds = rp, Mp.millisecond = Mp.milliseconds = pp, Mp.utcOffset = Ao, Mp.utc = ho, Mp.local = qo, Mp.parseZone = fo, Mp.hasAlignedHourOffset = _o, Mp.isDST = Wo, Mp.isLocal = go, Mp.isUtcOffset = yo, Mp.isUtc = Ro, Mp.isUTC = Ro, Mp.zoneAbbr = cp, Mp.zoneName = sp, Mp.dates = y("dates accessor is deprecated. Use date instead.", np), Mp.months = y("months accessor is deprecated. Use month instead", un), Mp.years = y("years accessor is deprecated. Use year instead", Je), Mp.zone = y("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", mo), Mp.isDSTShifted = y("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", Lo);
|
20019
20041
|
var Op = x.prototype;
|
20020
20042
|
|
20021
20043
|
function up(e, n, t, o) {
|
@@ -20049,11 +20071,11 @@
|
|
20049
20071
|
return lp(e, n, "monthsShort")
|
20050
20072
|
}
|
20051
20073
|
|
20052
|
-
function
|
20074
|
+
function qp(e, n, t) {
|
20053
20075
|
return Ap(e, n, t, "weekdays")
|
20054
20076
|
}
|
20055
20077
|
|
20056
|
-
function
|
20078
|
+
function fp(e, n, t) {
|
20057
20079
|
return Ap(e, n, t, "weekdaysShort")
|
20058
20080
|
}
|
20059
20081
|
|
@@ -20247,11 +20269,11 @@
|
|
20247
20269
|
return b ? (e = Ee(c / 60), n = Ee(e / 60), c %= 60, e %= 60, t = Ee(M / 12), M %= 12, o = c ? c.toFixed(3).replace(/\.?0+$/, "") : "", a = b < 0 ? "-" : "", p = sr(this._months) !== sr(b) ? "-" : "", r = sr(this._days) !== sr(b) ? "-" : "", i = sr(this._milliseconds) !== sr(b) ? "-" : "", a + "P" + (t ? p + t + "Y" : "") + (M ? p + M + "M" : "") + (s ? r + s + "D" : "") + (n || e || c ? "T" : "") + (n ? i + n + "H" : "") + (e ? i + e + "M" : "") + (c ? i + o + "S" : "")) : "P0D"
|
20248
20270
|
}
|
20249
20271
|
var br = io.prototype;
|
20250
|
-
return br.isValid = po, br.abs = Lp, br.add = yp, br.subtract = Rp, br.as = Sp, br.asMilliseconds = wp, br.asSeconds = kp, br.asMinutes = Dp, br.asHours = Bp, br.asDays = Cp, br.asWeeks = Xp, br.asMonths = Yp, br.asQuarters = jp, br.asYears = Pp, br.valueOf = Ip, br._bubble = Np, br.clone = Hp, br.get = Fp, br.milliseconds = Gp, br.seconds = Vp, br.minutes = Jp, br.hours = $p, br.days = Kp, br.weeks = er, br.months = Qp, br.years = Zp, br.humanize = ir, br.toISOString = Mr, br.toString = Mr, br.toJSON = Mr, br.locale = ca, br.localeData = Ma, br.toIsoString = y("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", Mr), br.lang = sa, j("X", 0, 0, "unix"), j("x", 0, 0, "valueOf"), Re("x",
|
20272
|
+
return br.isValid = po, br.abs = Lp, br.add = yp, br.subtract = Rp, br.as = Sp, br.asMilliseconds = wp, br.asSeconds = kp, br.asMinutes = Dp, br.asHours = Bp, br.asDays = Cp, br.asWeeks = Xp, br.asMonths = Yp, br.asQuarters = jp, br.asYears = Pp, br.valueOf = Ip, br._bubble = Np, br.clone = Hp, br.get = Fp, br.milliseconds = Gp, br.seconds = Vp, br.minutes = Jp, br.hours = $p, br.days = Kp, br.weeks = er, br.months = Qp, br.years = Zp, br.humanize = ir, br.toISOString = Mr, br.toString = Mr, br.toJSON = Mr, br.locale = ca, br.localeData = Ma, br.toIsoString = y("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", Mr), br.lang = sa, j("X", 0, 0, "unix"), j("x", 0, 0, "valueOf"), Re("x", qe), Re("X", We), we("X", (function(e, n, t) {
|
20251
20273
|
t._d = new Date(1e3 * parseFloat(e))
|
20252
20274
|
})), we("x", (function(e, n, t) {
|
20253
20275
|
t._d = new Date(Se(e))
|
20254
|
-
})), a.version = "2.30.1", p($t), a.fn = Mp, a.min = eo, a.max = no, a.now = to, a.utc = u, a.unix = bp, a.months = mp, a.isDate = z, a.locale = lt, a.invalid = h, a.duration = To, a.isMoment = L, a.weekdays =
|
20276
|
+
})), a.version = "2.30.1", p($t), a.fn = Mp, a.min = eo, a.max = no, a.now = to, a.utc = u, a.unix = bp, a.months = mp, a.isDate = z, a.locale = lt, a.invalid = h, a.duration = To, a.isMoment = L, a.weekdays = qp, a.parseZone = zp, a.localeData = ht, a.isDuration = co, a.monthsShort = hp, a.weekdaysMin = _p, a.defineLocale = At, a.updateLocale = mt, a.locales = qt, a.weekdaysShort = fp, a.normalizeUnits = oe, a.relativeTimeRounding = pr, a.relativeTimeThreshold = rr, a.calendarFormat = Io, a.prototype = Mp, a.HTML5_FMT = {
|
20255
20277
|
DATETIME_LOCAL: "YYYY-MM-DDTHH:mm",
|
20256
20278
|
DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss",
|
20257
20279
|
DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS",
|
@@ -20353,8 +20375,8 @@
|
|
20353
20375
|
stringify: () => b,
|
20354
20376
|
v1: () => l,
|
20355
20377
|
v3: () => h,
|
20356
|
-
v4: () =>
|
20357
|
-
v5: () =>
|
20378
|
+
v4: () => q,
|
20379
|
+
v5: () => f,
|
20358
20380
|
validate: () => s,
|
20359
20381
|
version: () => W
|
20360
20382
|
});
|
@@ -20431,7 +20453,7 @@
|
|
20431
20453
|
const h = m("v3", 48, (function(e) {
|
20432
20454
|
return Array.isArray(e) ? e = Buffer.from(e) : "string" == typeof e && (e = Buffer.from(e, "utf8")), a().createHash("md5").update(e).digest()
|
20433
20455
|
}));
|
20434
|
-
const
|
20456
|
+
const q = function(e, n, t) {
|
20435
20457
|
const o = (e = e || {}).random || (e.rng || i)();
|
20436
20458
|
if (o[6] = 15 & o[6] | 64, o[8] = 63 & o[8] | 128, n) {
|
20437
20459
|
t = t || 0;
|
@@ -20440,7 +20462,7 @@
|
|
20440
20462
|
}
|
20441
20463
|
return b(o)
|
20442
20464
|
};
|
20443
|
-
const
|
20465
|
+
const f = m("v5", 80, (function(e) {
|
20444
20466
|
return Array.isArray(e) ? e = Buffer.from(e) : "string" == typeof e && (e = Buffer.from(e, "utf8")), a().createHash("sha1").update(e).digest()
|
20445
20467
|
})),
|
20446
20468
|
_ = "00000000-0000-0000-0000-000000000000";
|
@@ -22073,7 +22095,7 @@
|
|
22073
22095
|
|
22074
22096
|
function d(e) {
|
22075
22097
|
return e ? o.parse(e, c((function(e) {
|
22076
|
-
return
|
22098
|
+
return f(e).trim()
|
22077
22099
|
}))) : null
|
22078
22100
|
}
|
22079
22101
|
var O = function(e) {
|
@@ -22102,10 +22124,10 @@
|
|
22102
22124
|
h = function(e) {
|
22103
22125
|
return e ? o.parse(e, c(i)) : null
|
22104
22126
|
},
|
22105
|
-
|
22127
|
+
q = function(e) {
|
22106
22128
|
return parseInt(e, 10)
|
22107
22129
|
},
|
22108
|
-
|
22130
|
+
f = function(e) {
|
22109
22131
|
var n = String(e);
|
22110
22132
|
return /^\d+$/.test(n) ? n : e
|
22111
22133
|
},
|
@@ -22126,7 +22148,7 @@
|
|
22126
22148
|
};
|
22127
22149
|
e.exports = {
|
22128
22150
|
init: function(e) {
|
22129
|
-
e(20,
|
22151
|
+
e(20, f), e(21, q), e(23, q), e(26, q), e(700, parseFloat), e(701, parseFloat), e(16, s), e(1082, p), e(1114, p), e(1184, p), e(600, W), e(651, l), e(718, L), e(1e3, M), e(1001, h), e(1005, z), e(1007, z), e(1028, z), e(1016, d), e(1017, O), e(1021, u), e(1022, u), e(1231, u), e(1014, l), e(1015, l), e(1008, l), e(1009, l), e(1040, l), e(1041, l), e(1115, A), e(1182, A), e(1185, A), e(1186, r), e(1187, m), e(17, i), e(114, JSON.parse.bind(JSON)), e(3802, JSON.parse.bind(JSON)), e(199, _), e(3807, _), e(3907, l), e(2951, l), e(791, l), e(1183, l), e(1270, l)
|
22130
22152
|
}
|
22131
22153
|
}
|
22132
22154
|
},
|
@@ -23772,20 +23794,20 @@
|
|
23772
23794
|
const h = a.length;
|
23773
23795
|
if (0 === h) return "{}";
|
23774
23796
|
if (d < s.length + 1) return '"[Object]"';
|
23775
|
-
let
|
23776
|
-
|
23777
|
-
"" !== l && (n = `,\n${A+=l}`,
|
23797
|
+
let q = "",
|
23798
|
+
f = "";
|
23799
|
+
"" !== l && (n = `,\n${A+=l}`, q = " ");
|
23778
23800
|
const _ = Math.min(h, O);
|
23779
23801
|
i && !c(m) && (a = r(a, z)), s.push(m);
|
23780
23802
|
for (let t = 0; t < _; t++) {
|
23781
23803
|
const o = a[t],
|
23782
23804
|
r = u(o, m, s, M, l, A);
|
23783
|
-
void 0 !== r && (e += `${
|
23805
|
+
void 0 !== r && (e += `${f}${p(o)}:${q}${r}`, f = n)
|
23784
23806
|
}
|
23785
23807
|
if (h > O) {
|
23786
|
-
e += `${
|
23808
|
+
e += `${f}"...":${q}"${b(h-O)} not stringified"`, f = n
|
23787
23809
|
}
|
23788
|
-
return "" !== l &&
|
23810
|
+
return "" !== l && f.length > 1 && (e = `\n${A}${e}\n${t}`), s.pop(), `{${e}}`
|
23789
23811
|
}
|
23790
23812
|
case "number":
|
23791
23813
|
return isFinite(m) ? String(m) : n ? n(m) : "null";
|
@@ -23884,19 +23906,19 @@
|
|
23884
23906
|
if (0 === m) return "{}";
|
23885
23907
|
if (d < M.length + 1) return '"[Object]"';
|
23886
23908
|
const h = `,\n${l+=u}`;
|
23887
|
-
let
|
23888
|
-
|
23909
|
+
let q = "",
|
23910
|
+
f = "",
|
23889
23911
|
_ = Math.min(m, O);
|
23890
|
-
c(t) && (
|
23912
|
+
c(t) && (q += s(t, h, O), a = a.slice(t.length), _ -= t.length, f = h), i && (a = r(a, z)), M.push(t);
|
23891
23913
|
for (let e = 0; e < _; e++) {
|
23892
23914
|
const n = a[e],
|
23893
23915
|
o = A(n, t[n], M, u, l);
|
23894
|
-
void 0 !== o && (
|
23916
|
+
void 0 !== o && (q += `${f}${p(n)}: ${o}`, f = h)
|
23895
23917
|
}
|
23896
23918
|
if (m > O) {
|
23897
|
-
|
23919
|
+
q += `${f}"...": "${b(m-O)} not stringified"`, f = h
|
23898
23920
|
}
|
23899
|
-
return "" !==
|
23921
|
+
return "" !== f && (q = `\n${l}${q}\n${n}`), M.pop(), `{${q}}`
|
23900
23922
|
}
|
23901
23923
|
case "number":
|
23902
23924
|
return isFinite(t) ? String(t) : n ? n(t) : "null";
|
@@ -24819,9 +24841,9 @@
|
|
24819
24841
|
A = l.ERR_INVALID_ARG_TYPE,
|
24820
24842
|
m = l.ERR_STREAM_PUSH_AFTER_EOF,
|
24821
24843
|
h = l.ERR_METHOD_NOT_IMPLEMENTED,
|
24822
|
-
|
24844
|
+
q = l.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;
|
24823
24845
|
t(2017)(L, p);
|
24824
|
-
var
|
24846
|
+
var f = O.errorOrDestroy,
|
24825
24847
|
_ = ["error", "close", "destroy", "pause", "resume"];
|
24826
24848
|
|
24827
24849
|
function W(e, n, a) {
|
@@ -24851,12 +24873,12 @@
|
|
24851
24873
|
o = n, r.isBuffer(o) || o instanceof i || "string" == typeof n || void 0 === n || e.objectMode || (t = new A("chunk", ["string", "Buffer", "Uint8Array"], n));
|
24852
24874
|
var o;
|
24853
24875
|
return t
|
24854
|
-
}(s, n)), p)
|
24876
|
+
}(s, n)), p) f(e, p);
|
24855
24877
|
else if (s.objectMode || n && n.length > 0)
|
24856
24878
|
if ("string" == typeof n || s.objectMode || Object.getPrototypeOf(n) === r.prototype || (n = function(e) {
|
24857
24879
|
return r.from(e)
|
24858
|
-
}(n)), o) s.endEmitted ?
|
24859
|
-
else if (s.ended)
|
24880
|
+
}(n)), o) s.endEmitted ? f(e, new q) : y(e, s, n, !0);
|
24881
|
+
else if (s.ended) f(e, new m);
|
24860
24882
|
else {
|
24861
24883
|
if (s.destroyed) return !1;
|
24862
24884
|
s.reading = !1, s.decoder && !t ? (n = s.decoder.write(n), s.objectMode || 0 !== n.length ? y(e, s, n, !1) : E(e, s)) : y(e, s, n, !1)
|
@@ -24970,7 +24992,7 @@
|
|
24970
24992
|
var o, a = n.needReadable;
|
24971
24993
|
return c("need readable", a), (0 === n.length || n.length - e < n.highWaterMark) && c("length less than watermark", a = !0), n.ended || n.reading ? c("reading or ended", a = !1) : a && (c("do read"), n.reading = !0, n.sync = !0, 0 === n.length && (n.needReadable = !0), this._read(n.highWaterMark), n.sync = !1, n.reading || (e = v(t, n))), null === (o = e > 0 ? B(e, n) : null) ? (n.needReadable = n.length <= n.highWaterMark, e = 0) : (n.length -= e, n.awaitDrain = 0), 0 === n.length && (n.ended || (n.needReadable = !0), t !== e && n.ended && C(this)), null !== o && this.emit("data", o), o
|
24972
24994
|
}, L.prototype._read = function(e) {
|
24973
|
-
|
24995
|
+
f(this, new h("_read()"))
|
24974
24996
|
}, L.prototype.pipe = function(e, n) {
|
24975
24997
|
var t = this,
|
24976
24998
|
o = this._readableState;
|
@@ -25011,7 +25033,7 @@
|
|
25011
25033
|
}
|
25012
25034
|
|
25013
25035
|
function z(n) {
|
25014
|
-
c("onerror", n), u(), e.removeListener("error", z), 0 === a(e, "error") &&
|
25036
|
+
c("onerror", n), u(), e.removeListener("error", z), 0 === a(e, "error") && f(e, n)
|
25015
25037
|
}
|
25016
25038
|
|
25017
25039
|
function d() {
|
@@ -25150,8 +25172,8 @@
|
|
25150
25172
|
A = z.ERR_STREAM_DESTROYED,
|
25151
25173
|
m = z.ERR_STREAM_NULL_VALUES,
|
25152
25174
|
h = z.ERR_STREAM_WRITE_AFTER_END,
|
25153
|
-
|
25154
|
-
|
25175
|
+
q = z.ERR_UNKNOWN_ENCODING,
|
25176
|
+
f = M.errorOrDestroy;
|
25155
25177
|
|
25156
25178
|
function _() {}
|
25157
25179
|
|
@@ -25167,7 +25189,7 @@
|
|
25167
25189
|
if (function(e) {
|
25168
25190
|
e.writing = !1, e.writecb = null, e.length -= e.writelen, e.writelen = 0
|
25169
25191
|
}(t), n) ! function(e, n, t, o, a) {
|
25170
|
-
--n.pendingcb, t ? (process.nextTick(a, o), process.nextTick(T, e, n), e._writableState.errorEmitted = !0,
|
25192
|
+
--n.pendingcb, t ? (process.nextTick(a, o), process.nextTick(T, e, n), e._writableState.errorEmitted = !0, f(e, o)) : (a(o), e._writableState.errorEmitted = !0, f(e, o), T(e, n))
|
25171
25193
|
}(e, t, o, n, a);
|
25172
25194
|
else {
|
25173
25195
|
var p = v(t) || e.destroyed;
|
@@ -25221,7 +25243,7 @@
|
|
25221
25243
|
|
25222
25244
|
function N(e, n) {
|
25223
25245
|
e._final((function(t) {
|
25224
|
-
n.pendingcb--, t &&
|
25246
|
+
n.pendingcb--, t && f(e, t), n.prefinished = !0, e.emit("prefinish"), T(e, n)
|
25225
25247
|
}))
|
25226
25248
|
}
|
25227
25249
|
|
@@ -25254,7 +25276,7 @@
|
|
25254
25276
|
})) : s = function(e) {
|
25255
25277
|
return e instanceof this
|
25256
25278
|
}, L.prototype.pipe = function() {
|
25257
|
-
|
25279
|
+
f(this, new l)
|
25258
25280
|
}, L.prototype.write = function(e, n, t) {
|
25259
25281
|
var o, a = this._writableState,
|
25260
25282
|
p = !1,
|
@@ -25263,10 +25285,10 @@
|
|
25263
25285
|
return i.from(e)
|
25264
25286
|
}(e)), "function" == typeof n && (t = n, n = null), r ? n = "buffer" : n || (n = a.defaultEncoding), "function" != typeof t && (t = _), a.ending ? function(e, n) {
|
25265
25287
|
var t = new h;
|
25266
|
-
|
25288
|
+
f(e, t), process.nextTick(n, t)
|
25267
25289
|
}(this, t) : (r || function(e, n, t, o) {
|
25268
25290
|
var a;
|
25269
|
-
return null === t ? a = new m : "string" == typeof t || n.objectMode || (a = new d("chunk", ["string", "Buffer"], t)), !a || (
|
25291
|
+
return null === t ? a = new m : "string" == typeof t || n.objectMode || (a = new d("chunk", ["string", "Buffer"], t)), !a || (f(e, a), process.nextTick(o, a), !1)
|
25270
25292
|
}(this, a, e, t)) && (a.pendingcb++, p = function(e, n, t, o, a, p) {
|
25271
25293
|
if (!t) {
|
25272
25294
|
var r = function(e, n, t) {
|
@@ -25297,7 +25319,7 @@
|
|
25297
25319
|
var e = this._writableState;
|
25298
25320
|
e.corked && (e.corked--, e.writing || e.corked || e.bufferProcessing || !e.bufferedRequest || R(this, e))
|
25299
25321
|
}, L.prototype.setDefaultEncoding = function(e) {
|
25300
|
-
if ("string" == typeof e && (e = e.toLowerCase()), !(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((e + "").toLowerCase()) > -1)) throw new
|
25322
|
+
if ("string" == typeof e && (e = e.toLowerCase()), !(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((e + "").toLowerCase()) > -1)) throw new q(e);
|
25301
25323
|
return this._writableState.defaultEncoding = e, this
|
25302
25324
|
}, Object.defineProperty(L.prototype, "writableBuffer", {
|
25303
25325
|
enumerable: !1,
|
@@ -26971,9 +26993,9 @@
|
|
26971
26993
|
A = l.ERR_INVALID_ARG_TYPE,
|
26972
26994
|
m = l.ERR_STREAM_PUSH_AFTER_EOF,
|
26973
26995
|
h = l.ERR_METHOD_NOT_IMPLEMENTED,
|
26974
|
-
|
26996
|
+
q = l.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;
|
26975
26997
|
t(2017)(L, p);
|
26976
|
-
var
|
26998
|
+
var f = O.errorOrDestroy,
|
26977
26999
|
_ = ["error", "close", "destroy", "pause", "resume"];
|
26978
27000
|
|
26979
27001
|
function W(e, n, a) {
|
@@ -27003,12 +27025,12 @@
|
|
27003
27025
|
o = n, r.isBuffer(o) || o instanceof i || "string" == typeof n || void 0 === n || e.objectMode || (t = new A("chunk", ["string", "Buffer", "Uint8Array"], n));
|
27004
27026
|
var o;
|
27005
27027
|
return t
|
27006
|
-
}(s, n)), p)
|
27028
|
+
}(s, n)), p) f(e, p);
|
27007
27029
|
else if (s.objectMode || n && n.length > 0)
|
27008
27030
|
if ("string" == typeof n || s.objectMode || Object.getPrototypeOf(n) === r.prototype || (n = function(e) {
|
27009
27031
|
return r.from(e)
|
27010
|
-
}(n)), o) s.endEmitted ?
|
27011
|
-
else if (s.ended)
|
27032
|
+
}(n)), o) s.endEmitted ? f(e, new q) : y(e, s, n, !0);
|
27033
|
+
else if (s.ended) f(e, new m);
|
27012
27034
|
else {
|
27013
27035
|
if (s.destroyed) return !1;
|
27014
27036
|
s.reading = !1, s.decoder && !t ? (n = s.decoder.write(n), s.objectMode || 0 !== n.length ? y(e, s, n, !1) : E(e, s)) : y(e, s, n, !1)
|
@@ -27122,7 +27144,7 @@
|
|
27122
27144
|
var o, a = n.needReadable;
|
27123
27145
|
return c("need readable", a), (0 === n.length || n.length - e < n.highWaterMark) && c("length less than watermark", a = !0), n.ended || n.reading ? c("reading or ended", a = !1) : a && (c("do read"), n.reading = !0, n.sync = !0, 0 === n.length && (n.needReadable = !0), this._read(n.highWaterMark), n.sync = !1, n.reading || (e = v(t, n))), null === (o = e > 0 ? B(e, n) : null) ? (n.needReadable = n.length <= n.highWaterMark, e = 0) : (n.length -= e, n.awaitDrain = 0), 0 === n.length && (n.ended || (n.needReadable = !0), t !== e && n.ended && C(this)), null !== o && this.emit("data", o), o
|
27124
27146
|
}, L.prototype._read = function(e) {
|
27125
|
-
|
27147
|
+
f(this, new h("_read()"))
|
27126
27148
|
}, L.prototype.pipe = function(e, n) {
|
27127
27149
|
var t = this,
|
27128
27150
|
o = this._readableState;
|
@@ -27163,7 +27185,7 @@
|
|
27163
27185
|
}
|
27164
27186
|
|
27165
27187
|
function z(n) {
|
27166
|
-
c("onerror", n), u(), e.removeListener("error", z), 0 === a(e, "error") &&
|
27188
|
+
c("onerror", n), u(), e.removeListener("error", z), 0 === a(e, "error") && f(e, n)
|
27167
27189
|
}
|
27168
27190
|
|
27169
27191
|
function d() {
|
@@ -27366,8 +27388,8 @@
|
|
27366
27388
|
A = z.ERR_STREAM_DESTROYED,
|
27367
27389
|
m = z.ERR_STREAM_NULL_VALUES,
|
27368
27390
|
h = z.ERR_STREAM_WRITE_AFTER_END,
|
27369
|
-
|
27370
|
-
|
27391
|
+
q = z.ERR_UNKNOWN_ENCODING,
|
27392
|
+
f = M.errorOrDestroy;
|
27371
27393
|
|
27372
27394
|
function _() {}
|
27373
27395
|
|
@@ -27383,7 +27405,7 @@
|
|
27383
27405
|
if (function(e) {
|
27384
27406
|
e.writing = !1, e.writecb = null, e.length -= e.writelen, e.writelen = 0
|
27385
27407
|
}(t), n) ! function(e, n, t, o, a) {
|
27386
|
-
--n.pendingcb, t ? (process.nextTick(a, o), process.nextTick(T, e, n), e._writableState.errorEmitted = !0,
|
27408
|
+
--n.pendingcb, t ? (process.nextTick(a, o), process.nextTick(T, e, n), e._writableState.errorEmitted = !0, f(e, o)) : (a(o), e._writableState.errorEmitted = !0, f(e, o), T(e, n))
|
27387
27409
|
}(e, t, o, n, a);
|
27388
27410
|
else {
|
27389
27411
|
var p = v(t) || e.destroyed;
|
@@ -27437,7 +27459,7 @@
|
|
27437
27459
|
|
27438
27460
|
function N(e, n) {
|
27439
27461
|
e._final((function(t) {
|
27440
|
-
n.pendingcb--, t &&
|
27462
|
+
n.pendingcb--, t && f(e, t), n.prefinished = !0, e.emit("prefinish"), T(e, n)
|
27441
27463
|
}))
|
27442
27464
|
}
|
27443
27465
|
|
@@ -27470,7 +27492,7 @@
|
|
27470
27492
|
})) : s = function(e) {
|
27471
27493
|
return e instanceof this
|
27472
27494
|
}, L.prototype.pipe = function() {
|
27473
|
-
|
27495
|
+
f(this, new l)
|
27474
27496
|
}, L.prototype.write = function(e, n, t) {
|
27475
27497
|
var o, a = this._writableState,
|
27476
27498
|
p = !1,
|
@@ -27479,10 +27501,10 @@
|
|
27479
27501
|
return i.from(e)
|
27480
27502
|
}(e)), "function" == typeof n && (t = n, n = null), r ? n = "buffer" : n || (n = a.defaultEncoding), "function" != typeof t && (t = _), a.ending ? function(e, n) {
|
27481
27503
|
var t = new h;
|
27482
|
-
|
27504
|
+
f(e, t), process.nextTick(n, t)
|
27483
27505
|
}(this, t) : (r || function(e, n, t, o) {
|
27484
27506
|
var a;
|
27485
|
-
return null === t ? a = new m : "string" == typeof t || n.objectMode || (a = new d("chunk", ["string", "Buffer"], t)), !a || (
|
27507
|
+
return null === t ? a = new m : "string" == typeof t || n.objectMode || (a = new d("chunk", ["string", "Buffer"], t)), !a || (f(e, a), process.nextTick(o, a), !1)
|
27486
27508
|
}(this, a, e, t)) && (a.pendingcb++, p = function(e, n, t, o, a, p) {
|
27487
27509
|
if (!t) {
|
27488
27510
|
var r = function(e, n, t) {
|
@@ -27513,7 +27535,7 @@
|
|
27513
27535
|
var e = this._writableState;
|
27514
27536
|
e.corked && (e.corked--, e.writing || e.corked || e.bufferProcessing || !e.bufferedRequest || R(this, e))
|
27515
27537
|
}, L.prototype.setDefaultEncoding = function(e) {
|
27516
|
-
if ("string" == typeof e && (e = e.toLowerCase()), !(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((e + "").toLowerCase()) > -1)) throw new
|
27538
|
+
if ("string" == typeof e && (e = e.toLowerCase()), !(["hex", "utf8", "utf-8", "ascii", "binary", "base64", "ucs2", "ucs-2", "utf16le", "utf-16le", "raw"].indexOf((e + "").toLowerCase()) > -1)) throw new q(e);
|
27517
27539
|
return this._writableState.defaultEncoding = e, this
|
27518
27540
|
}, Object.defineProperty(L.prototype, "writableBuffer", {
|
27519
27541
|
enumerable: !1,
|
@@ -28214,8 +28236,8 @@
|
|
28214
28236
|
A = O(p),
|
28215
28237
|
m = O(r),
|
28216
28238
|
h = O(i),
|
28217
|
-
|
28218
|
-
|
28239
|
+
q = O(c),
|
28240
|
+
f = O(s),
|
28219
28241
|
_ = O(M),
|
28220
28242
|
W = O(b),
|
28221
28243
|
L = O(z);
|
@@ -28499,7 +28521,7 @@
|
|
28499
28521
|
return Oe.endsWith(e, "[]") ? e.slice(0, -2) : e
|
28500
28522
|
}
|
28501
28523
|
|
28502
|
-
function
|
28524
|
+
function qe(e, n, t) {
|
28503
28525
|
return e ? e.concat(n).map((function(e, n) {
|
28504
28526
|
return e = he(e), !t && n ? "[" + e + "]" : e
|
28505
28527
|
})).join(t ? "." : "") : n
|
@@ -28515,7 +28537,7 @@
|
|
28515
28537
|
return e !== Error.prototype
|
28516
28538
|
}), (e => "isAxiosError" !== e)), ue.call(r, e.message, n, t, o, a), r.cause = e, r.name = e.name, p && Object.assign(r, p), r
|
28517
28539
|
};
|
28518
|
-
const
|
28540
|
+
const fe = Oe.toFlatObject(Oe, {}, null, (function(e) {
|
28519
28541
|
return /^is[A-Z]/.test(e)
|
28520
28542
|
}));
|
28521
28543
|
|
@@ -28550,12 +28572,12 @@
|
|
28550
28572
|
else if (Oe.isArray(e) && function(e) {
|
28551
28573
|
return Oe.isArray(e) && !e.some(me)
|
28552
28574
|
}(e) || (Oe.isFileList(e) || Oe.endsWith(t, "[]")) && (i = Oe.toArray(e))) return t = he(t), i.forEach((function(e, o) {
|
28553
|
-
!Oe.isUndefined(e) && null !== e && n.append(!0 === r ?
|
28575
|
+
!Oe.isUndefined(e) && null !== e && n.append(!0 === r ? qe([t], o, p) : null === r ? t : t + "[]", c(e))
|
28554
28576
|
})), !1;
|
28555
|
-
return !!me(e) || (n.append(
|
28577
|
+
return !!me(e) || (n.append(qe(a, t, p), c(e)), !1)
|
28556
28578
|
}
|
28557
28579
|
const M = [],
|
28558
|
-
b = Object.assign(
|
28580
|
+
b = Object.assign(fe, {
|
28559
28581
|
defaultVisitor: s,
|
28560
28582
|
convertValue: c,
|
28561
28583
|
isVisitable: me
|
@@ -29084,7 +29106,7 @@
|
|
29084
29106
|
} = Symbol,
|
29085
29107
|
cn = async function*(e) {
|
29086
29108
|
e.stream ? yield* e.stream(): e.arrayBuffer ? yield await e.arrayBuffer(): e[rn] ? yield* e[rn](): yield e
|
29087
|
-
}, sn = Ye.ALPHABET.ALPHA_DIGIT + "-_", Mn = "function" == typeof TextEncoder ? new TextEncoder : new
|
29109
|
+
}, sn = Ye.ALPHABET.ALPHA_DIGIT + "-_", Mn = "function" == typeof TextEncoder ? new TextEncoder : new f.default.TextEncoder, bn = "\r\n", zn = Mn.encode(bn);
|
29088
29110
|
class FormDataPart {
|
29089
29111
|
constructor(e, n) {
|
29090
29112
|
const {
|
@@ -29221,11 +29243,11 @@
|
|
29221
29243
|
flush: W.default.constants.Z_SYNC_FLUSH,
|
29222
29244
|
finishFlush: W.default.constants.Z_SYNC_FLUSH
|
29223
29245
|
},
|
29224
|
-
|
29246
|
+
qn = {
|
29225
29247
|
flush: W.default.constants.BROTLI_OPERATION_FLUSH,
|
29226
29248
|
finishFlush: W.default.constants.BROTLI_OPERATION_FLUSH
|
29227
29249
|
},
|
29228
|
-
|
29250
|
+
fn = Oe.isFunction(W.default.createBrotliDecompress),
|
29229
29251
|
{
|
29230
29252
|
http: _n,
|
29231
29253
|
https: Wn
|
@@ -29369,7 +29391,7 @@
|
|
29369
29391
|
})
|
29370
29392
|
} else if (Oe.isFormData(a) && Oe.isFunction(a.getHeaders)) {
|
29371
29393
|
if (g.set(a.getHeaders()), !g.hasContentLength()) try {
|
29372
|
-
const e = await
|
29394
|
+
const e = await f.default.promisify(a.getLength).call(a);
|
29373
29395
|
Number.isFinite(e) && e >= 0 && g.setContentLength(e)
|
29374
29396
|
} catch (e) {}
|
29375
29397
|
} else if (Oe.isBlob(a) || Oe.isFile(a)) a.size && g.setContentType(a.type || "application/octet-stream"), g.setContentLength(a.size || 0), a = L.default.Readable.from(cn(a));
|
@@ -29395,7 +29417,7 @@
|
|
29395
29417
|
const o = new Error(n.message);
|
29396
29418
|
return o.config = e, o.url = e.url, o.exists = !0, t(o)
|
29397
29419
|
}
|
29398
|
-
g.set("Accept-Encoding", "gzip, compress, deflate" + (
|
29420
|
+
g.set("Accept-Encoding", "gzip, compress, deflate" + (fn ? ", br" : ""), !1);
|
29399
29421
|
const w = {
|
29400
29422
|
path: x,
|
29401
29423
|
method: s,
|
@@ -29413,7 +29435,7 @@
|
|
29413
29435
|
let k;
|
29414
29436
|
!Oe.isUndefined(p) && (w.lookup = p), e.socketPath ? w.socketPath = e.socketPath : (w.hostname = m.hostname.startsWith("[") ? m.hostname.slice(1, -1) : m.hostname, w.port = m.port, vn(w, e.proxy, _ + "//" + m.hostname + (m.port ? ":" + m.port : "") + w.path));
|
29415
29437
|
const D = Ln.test(w.protocol);
|
29416
|
-
if (w.agent = D ? e.httpsAgent : e.httpAgent, e.transport ? k = e.transport : 0 === e.maxRedirects ? k = D ?
|
29438
|
+
if (w.agent = D ? e.httpsAgent : e.httpAgent, e.transport ? k = e.transport : 0 === e.maxRedirects ? k = D ? q.default : h.default : (e.maxRedirects && (w.maxRedirects = e.maxRedirects), e.beforeRedirect && (w.beforeRedirects.config = e.beforeRedirect), k = D ? Wn : _n), e.maxBodyLength > -1 ? w.maxBodyLength = e.maxBodyLength : w.maxBodyLength = 1 / 0, e.insecureHTTPParser && (w.insecureHTTPParser = e.insecureHTTPParser), b = k.request(w, (function(o) {
|
29417
29439
|
if (b.destroyed) return;
|
29418
29440
|
const a = [o],
|
29419
29441
|
p = +o.headers["content-length"];
|
@@ -29436,7 +29458,7 @@
|
|
29436
29458
|
a.push(new On), a.push(W.default.createUnzip(hn)), delete o.headers["content-encoding"];
|
29437
29459
|
break;
|
29438
29460
|
case "br":
|
29439
|
-
|
29461
|
+
fn && (a.push(W.default.createBrotliDecompress(qn)), delete o.headers["content-encoding"])
|
29440
29462
|
}
|
29441
29463
|
r = a.length > 1 ? L.default.pipeline(a, Oe.noop) : a[0];
|
29442
29464
|
const d = L.default.finished(r, (() => {
|
@@ -30313,9 +30335,9 @@
|
|
30313
30335
|
|
30314
30336
|
function h() {}
|
30315
30337
|
|
30316
|
-
function f() {}
|
30317
|
-
|
30318
30338
|
function q() {}
|
30339
|
+
|
30340
|
+
function f() {}
|
30319
30341
|
var _ = {};
|
30320
30342
|
b(_, c, (function() {
|
30321
30343
|
return this
|
@@ -30323,7 +30345,7 @@
|
|
30323
30345
|
var W = Object.getPrototypeOf,
|
30324
30346
|
L = W && W(W(x([])));
|
30325
30347
|
L && L !== t && p.call(L, c) && (_ = L);
|
30326
|
-
var g =
|
30348
|
+
var g = f.prototype = h.prototype = Object.create(_);
|
30327
30349
|
|
30328
30350
|
function y(e) {
|
30329
30351
|
["next", "throw", "return"].forEach((function(n) {
|
@@ -30448,17 +30470,17 @@
|
|
30448
30470
|
}
|
30449
30471
|
throw new TypeError(o(n) + " is not iterable")
|
30450
30472
|
}
|
30451
|
-
return
|
30452
|
-
value: q,
|
30453
|
-
configurable: !0
|
30454
|
-
}), r(q, "constructor", {
|
30473
|
+
return q.prototype = f, r(g, "constructor", {
|
30455
30474
|
value: f,
|
30456
30475
|
configurable: !0
|
30457
|
-
}), f
|
30476
|
+
}), r(f, "constructor", {
|
30477
|
+
value: q,
|
30478
|
+
configurable: !0
|
30479
|
+
}), q.displayName = b(f, M, "GeneratorFunction"), n.isGeneratorFunction = function(e) {
|
30458
30480
|
var n = "function" == typeof e && e.constructor;
|
30459
|
-
return !!n && (n ===
|
30481
|
+
return !!n && (n === q || "GeneratorFunction" === (n.displayName || n.name))
|
30460
30482
|
}, n.mark = function(e) {
|
30461
|
-
return Object.setPrototypeOf ? Object.setPrototypeOf(e,
|
30483
|
+
return Object.setPrototypeOf ? Object.setPrototypeOf(e, f) : (e.__proto__ = f, b(e, M, "GeneratorFunction")), e.prototype = Object.create(g), e
|
30462
30484
|
}, n.awrap = function(e) {
|
30463
30485
|
return {
|
30464
30486
|
__await: e
|
@@ -30625,25 +30647,26 @@
|
|
30625
30647
|
O = t(3854),
|
30626
30648
|
u = t(9e3),
|
30627
30649
|
l = t(3460),
|
30628
|
-
A =
|
30629
|
-
m = process.env.
|
30630
|
-
h = process.env.
|
30650
|
+
A = t(763),
|
30651
|
+
m = process.env.PGDATA_USER || "",
|
30652
|
+
h = process.env.PGDATA_HOST || "",
|
30653
|
+
q = process.env.PGDATA_DATABASE || "",
|
30631
30654
|
f = process.env.PGDATA_PASSWORD || "",
|
30632
|
-
|
30633
|
-
|
30634
|
-
user:
|
30635
|
-
host:
|
30636
|
-
database:
|
30655
|
+
_ = process.env.PGDATA_PORT || "",
|
30656
|
+
W = new M({
|
30657
|
+
user: m,
|
30658
|
+
host: h,
|
30659
|
+
database: q,
|
30637
30660
|
password: f,
|
30638
|
-
port:
|
30661
|
+
port: _ || 5432
|
30639
30662
|
}),
|
30640
|
-
|
30641
|
-
|
30642
|
-
|
30643
|
-
|
30644
|
-
|
30645
|
-
|
30646
|
-
|
30663
|
+
L = parseInt(process.env.RETRY_INTERVAL || "300000", 10),
|
30664
|
+
g = parseInt(process.env.MAX_RETRY_COUNT || "5", 10),
|
30665
|
+
y = (parseInt(process.env.BATCH_SIZE || "10", 10), A.parseBooleanParam(process.env.EXECUTE_CREATETABLE || !1)),
|
30666
|
+
R = !0 === process.argv.includes("--syncAllDanhMuc"),
|
30667
|
+
v = !0 === process.argv.includes("--syncBnnoitru"),
|
30668
|
+
N = !0 === process.argv.includes("--exportSQLCreateTable"),
|
30669
|
+
T = !0 === process.argv.includes("--psdangkySyncDCHG");
|
30647
30670
|
r(a().mark((function e() {
|
30648
30671
|
var n, t;
|
30649
30672
|
return a().wrap((function(e) {
|
@@ -30655,40 +30678,55 @@
|
|
30655
30678
|
return a().wrap((function(e) {
|
30656
30679
|
for (;;) switch (e.prev = e.next) {
|
30657
30680
|
case 0:
|
30658
|
-
return e.prev = 0, e.next = 3,
|
30681
|
+
return e.prev = 0, e.next = 3, W.connect();
|
30659
30682
|
case 3:
|
30660
|
-
return i = e.sent, O.initializePgClient(i), O.initializePgPool(
|
30683
|
+
return i = e.sent, O.initializePgClient(i), O.initializePgPool(W), t = "", e.next = 9, r(a().mark((function e() {
|
30661
30684
|
var n, t;
|
30662
30685
|
return a().wrap((function(e) {
|
30663
30686
|
for (;;) switch (e.prev = e.next) {
|
30664
30687
|
case 0:
|
30665
|
-
if (!0 ===
|
30688
|
+
if (!0 === y) {
|
30666
30689
|
e.next = 3;
|
30667
30690
|
break
|
30668
30691
|
}
|
30669
|
-
return u.logInfo("Không thực hiện checkTable do EXCUTE_CREATETABLE = ".concat(
|
30692
|
+
return u.logInfo("Không thực hiện checkTable do EXCUTE_CREATETABLE = ".concat(y)), e.abrupt("return");
|
30670
30693
|
case 3:
|
30671
30694
|
n = d.SQL.initSQLs, t = 0;
|
30672
30695
|
case 5:
|
30673
30696
|
if (!(t < n.length)) {
|
30674
|
-
e.next =
|
30697
|
+
e.next = 34;
|
30675
30698
|
break
|
30676
30699
|
}
|
30677
30700
|
return e.prev = 6, u.logInfo("Thực hiện checkTable [".concat(t + 1, "/").concat(n.length, "]....")), e.next = 10, i.query(n[t]);
|
30678
30701
|
case 10:
|
30679
|
-
e.next =
|
30702
|
+
e.next = 31;
|
30680
30703
|
break;
|
30681
30704
|
case 12:
|
30682
|
-
e.prev = 12, e.t0 = e.catch(6),
|
30683
|
-
|
30705
|
+
if (e.prev = 12, e.t0 = e.catch(6), e.prev = 14, "42601" !== e.t0.code || !e.t0.message || !e.t0.message.toLowerCase().includes('syntax error at or near "function"')) {
|
30706
|
+
e.next = 23;
|
30707
|
+
break
|
30708
|
+
}
|
30709
|
+
return u.logWarn("Phát hiện lỗi syntax FUNCTION: ".concat(e.t0.message)), u.logInfo("Thực hiện lại đổi ' EXECUTE FUNCTION '=>' EXECUTE PROCEDURE ' checkTable [".concat(t + 1, "/").concat(n.length, "]....")), n[t] = n[t].replace("EXECUTE FUNCTION", "EXECUTE PROCEDURE"), e.next = 21, i.query(n[t]);
|
30710
|
+
case 21:
|
30711
|
+
e.next = 25;
|
30712
|
+
break;
|
30713
|
+
case 23:
|
30714
|
+
u.logError(e.t0, "Error checkTable"), u.logInfo(n[t], "Error SQL");
|
30715
|
+
case 25:
|
30716
|
+
e.next = 31;
|
30717
|
+
break;
|
30718
|
+
case 27:
|
30719
|
+
e.prev = 27, e.t1 = e.catch(14), u.logError(e.t1, "Child Error checkTable"), u.logInfo(n[t], "Child Error SQL");
|
30720
|
+
case 31:
|
30684
30721
|
t++, e.next = 5;
|
30685
30722
|
break;
|
30686
|
-
case
|
30723
|
+
case 34:
|
30687
30724
|
case "end":
|
30688
30725
|
return e.stop()
|
30689
30726
|
}
|
30690
30727
|
}), e, null, [
|
30691
|
-
[6, 12]
|
30728
|
+
[6, 12],
|
30729
|
+
[14, 27]
|
30692
30730
|
])
|
30693
30731
|
})))();
|
30694
30732
|
case 9:
|
@@ -30696,7 +30734,7 @@
|
|
30696
30734
|
return a().wrap((function(e) {
|
30697
30735
|
for (;;) switch (e.prev = e.next) {
|
30698
30736
|
case 0:
|
30699
|
-
if (e.prev = 0, !0 ===
|
30737
|
+
if (e.prev = 0, !0 === R) {
|
30700
30738
|
e.next = 3;
|
30701
30739
|
break
|
30702
30740
|
}
|
@@ -30721,7 +30759,7 @@
|
|
30721
30759
|
return a().wrap((function(e) {
|
30722
30760
|
for (;;) switch (e.prev = e.next) {
|
30723
30761
|
case 0:
|
30724
|
-
if (e.prev = 0, !0 ===
|
30762
|
+
if (e.prev = 0, !0 === v) {
|
30725
30763
|
e.next = 3;
|
30726
30764
|
break
|
30727
30765
|
}
|
@@ -30747,7 +30785,7 @@
|
|
30747
30785
|
return a().wrap((function(e) {
|
30748
30786
|
for (;;) switch (e.prev = e.next) {
|
30749
30787
|
case 0:
|
30750
|
-
if (e.prev = 0, !0 ===
|
30788
|
+
if (e.prev = 0, !0 === N) {
|
30751
30789
|
e.next = 3;
|
30752
30790
|
break
|
30753
30791
|
}
|
@@ -30775,7 +30813,7 @@
|
|
30775
30813
|
return a().wrap((function(e) {
|
30776
30814
|
for (;;) switch (e.prev = e.next) {
|
30777
30815
|
case 0:
|
30778
|
-
if (e.prev = 0, !0 ===
|
30816
|
+
if (e.prev = 0, !0 === T) {
|
30779
30817
|
e.next = 3;
|
30780
30818
|
break
|
30781
30819
|
}
|
@@ -30819,7 +30857,7 @@
|
|
30819
30857
|
return a().wrap((function(e) {
|
30820
30858
|
for (;;) switch (e.prev = e.next) {
|
30821
30859
|
case 0:
|
30822
|
-
console.log("Notification received:", n.payload), !0 !==
|
30860
|
+
console.log("Notification received:", n.payload), !0 !== R && O.queueNotification(n);
|
30823
30861
|
case 2:
|
30824
30862
|
case "end":
|
30825
30863
|
return e.stop()
|
@@ -30831,17 +30869,17 @@
|
|
30831
30869
|
}
|
30832
30870
|
}()), i.on("error", (function(e) {
|
30833
30871
|
console.error("Database connection error:", e), setTimeout(n, 5e3)
|
30834
|
-
})), !0 !==
|
30872
|
+
})), !0 !== R && (setInterval(r(a().mark((function e() {
|
30835
30873
|
return a().wrap((function(e) {
|
30836
30874
|
for (;;) switch (e.prev = e.next) {
|
30837
30875
|
case 0:
|
30838
|
-
return e.next = 2, O.processUnprocessedNotifications(
|
30876
|
+
return e.next = 2, O.processUnprocessedNotifications(g);
|
30839
30877
|
case 2:
|
30840
30878
|
case "end":
|
30841
30879
|
return e.stop()
|
30842
30880
|
}
|
30843
30881
|
}), e)
|
30844
|
-
}))),
|
30882
|
+
}))), L), u.logInfo("Scheduled retry job every ".concat(L / 1e3, " seconds"))), e.next = 38;
|
30845
30883
|
break;
|
30846
30884
|
case 34:
|
30847
30885
|
e.prev = 34, e.t0 = e.catch(0), console.error("Failed to initialize listener:", e.t0), setTimeout(n, 5e3);
|
@@ -30857,10 +30895,10 @@
|
|
30857
30895
|
return t.apply(this, arguments)
|
30858
30896
|
}, e.next = 4, n();
|
30859
30897
|
case 4:
|
30860
|
-
u.logInfo("pg-services-emr-dhs, version: ".concat("1.25.
|
30861
|
-
PGDATA_HOST:
|
30862
|
-
PGDATA_DATABASE:
|
30863
|
-
PGDATA_PORT:
|
30898
|
+
u.logInfo("pg-services-emr-dhs, version: ".concat("1.25.0728.0943")), u.logInfoObject({
|
30899
|
+
PGDATA_HOST: h,
|
30900
|
+
PGDATA_DATABASE: q,
|
30901
|
+
PGDATA_PORT: _
|
30864
30902
|
}, "Thông tin kết nối PostgreSQL:");
|
30865
30903
|
case 6:
|
30866
30904
|
case "end":
|
@@ -30877,7 +30915,7 @@
|
|
30877
30915
|
case 6:
|
30878
30916
|
return e.prev = 6, i.release(), e.finish(6);
|
30879
30917
|
case 9:
|
30880
|
-
return e.next = 11,
|
30918
|
+
return e.next = 11, W.end();
|
30881
30919
|
case 11:
|
30882
30920
|
console.log("✅ Pool closed"), e.next = 17;
|
30883
30921
|
break;
|
@@ -30915,4 +30953,4 @@
|
|
30915
30953
|
e.killed || (u.logInfo("psdangkySyncDCHG timeout after ".concat(n, "(ms), terminating...")), e.kill("SIGTERM"))
|
30916
30954
|
}), n)
|
30917
30955
|
}))
|
30918
|
-
})();/*! [dist-pg-services.js]; ===WEBPACK BUILD: 1.25.
|
30956
|
+
})();/*! [dist-pg-services.js]; ===WEBPACK BUILD: 1.25.0728.0943=== */
|