cry-klikvet-logic 1.0.225 → 1.0.227

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.
Files changed (189) hide show
  1. package/dist/anonimizirajPodatke.mjs +436 -653
  2. package/dist/anonimizirajPodatke.mjs.map +1 -1
  3. package/dist/blagovnicaZaSpremembeZaloge.mjs +61 -64
  4. package/dist/blagovnicaZaSpremembeZaloge.mjs.map +1 -1
  5. package/dist/certs.mjs +13 -26
  6. package/dist/certs.mjs.map +1 -1
  7. package/dist/dopisiSerijskeNaNapravi.d.mts.map +1 -1
  8. package/dist/dopisiSerijskeNaNapravi.mjs +32 -65
  9. package/dist/dopisiSerijskeNaNapravi.mjs.map +1 -1
  10. package/dist/ensureIndexes.mjs +143 -158
  11. package/dist/ensureIndexes.mjs.map +1 -1
  12. package/dist/idjiArtiklovKiImajoLahkoZalogo.mjs +12 -23
  13. package/dist/idjiArtiklovKiImajoLahkoZalogo.mjs.map +1 -1
  14. package/dist/karticaArtikla.mjs +126 -141
  15. package/dist/karticaArtikla.mjs.map +1 -1
  16. package/dist/koledar.mjs +24 -35
  17. package/dist/koledar.mjs.map +1 -1
  18. package/dist/maint/nastaviNbcArtiklomIzMpc.mjs +27 -58
  19. package/dist/maint/nastaviNbcArtiklomIzMpc.mjs.map +1 -1
  20. package/dist/maint/poisciNapakeVSpremembiZaloge.mjs +49 -60
  21. package/dist/maint/poisciNapakeVSpremembiZaloge.mjs.map +1 -1
  22. package/dist/maint/poknjiziVsoZgodovino.mjs +245 -337
  23. package/dist/maint/poknjiziVsoZgodovino.mjs.map +1 -1
  24. package/dist/maint/popraviNabaveCeneNaRacunih.mjs +17 -48
  25. package/dist/maint/popraviNabaveCeneNaRacunih.mjs.map +1 -1
  26. package/dist/maint/popraviNabavneCeneNaInventurah.mjs +15 -46
  27. package/dist/maint/popraviNabavneCeneNaInventurah.mjs.map +1 -1
  28. package/dist/models/Serijske.d.mts +1 -1
  29. package/dist/models/Serijske.d.mts.map +1 -1
  30. package/dist/neuporabljeno.mjs +26 -59
  31. package/dist/neuporabljeno.mjs.map +1 -1
  32. package/dist/parseSerijaStr.d.mts +1 -1
  33. package/dist/parseSerijaStr.d.mts.map +1 -1
  34. package/dist/pobrisiZgodovinoNaDan.mjs +17 -28
  35. package/dist/pobrisiZgodovinoNaDan.mjs.map +1 -1
  36. package/dist/podatkiRejca.mjs +113 -124
  37. package/dist/podatkiRejca.mjs.map +1 -1
  38. package/dist/poisciSerijskeZaNapravo.mjs +20 -52
  39. package/dist/poisciSerijskeZaNapravo.mjs.map +1 -1
  40. package/dist/polnaInventura.mjs +112 -131
  41. package/dist/polnaInventura.mjs.map +1 -1
  42. package/dist/porabaZaDobavnico.mjs +16 -1
  43. package/dist/porabaZaDobavnico.mjs.map +1 -1
  44. package/dist/porabaZaObravnavo.mjs +16 -1
  45. package/dist/porabaZaObravnavo.mjs.map +1 -1
  46. package/dist/preveriKnjizenjeZalogeArtikla.mjs +97 -110
  47. package/dist/preveriKnjizenjeZalogeArtikla.mjs.map +1 -1
  48. package/dist/q-blagovnice.mjs +12 -23
  49. package/dist/q-blagovnice.mjs.map +1 -1
  50. package/dist/q-isciPoObravnavah.mjs +25 -36
  51. package/dist/q-isciPoObravnavah.mjs.map +1 -1
  52. package/dist/q-isciPoRacunih.mjs +25 -36
  53. package/dist/q-isciPoRacunih.mjs.map +1 -1
  54. package/dist/q-mojPromet.mjs +23 -34
  55. package/dist/q-mojPromet.mjs.map +1 -1
  56. package/dist/q-porabaZdravil.mjs +110 -110
  57. package/dist/q-porabaZdravil.mjs.map +1 -1
  58. package/dist/q-prodano.mjs +33 -44
  59. package/dist/q-prodano.mjs.map +1 -1
  60. package/dist/q-prodanoPorabljeno.mjs +47 -47
  61. package/dist/q-prodanoPorabljeno.mjs.map +1 -1
  62. package/dist/q-promet.mjs +24 -35
  63. package/dist/q-promet.mjs.map +1 -1
  64. package/dist/q-racunovodji.mjs +229 -239
  65. package/dist/q-racunovodji.mjs.map +1 -1
  66. package/dist/q-skupineIzdelkov.mjs +20 -31
  67. package/dist/q-skupineIzdelkov.mjs.map +1 -1
  68. package/dist/q-skupineStrank.mjs +20 -31
  69. package/dist/q-skupineStrank.mjs.map +1 -1
  70. package/dist/q-strankeKlasificiraj.mjs +58 -69
  71. package/dist/q-strankeKlasificiraj.mjs.map +1 -1
  72. package/dist/q-strankeZadnjiObiski.mjs +22 -33
  73. package/dist/q-strankeZadnjiObiski.mjs.map +1 -1
  74. package/dist/q-zakljucek-blagajne.mjs +132 -147
  75. package/dist/q-zakljucek-blagajne.mjs.map +1 -1
  76. package/dist/razknjiziBlagovnico.mjs +46 -57
  77. package/dist/razknjiziBlagovnico.mjs.map +1 -1
  78. package/dist/razknjiziDobavnico.mjs +47 -58
  79. package/dist/razknjiziDobavnico.mjs.map +1 -1
  80. package/dist/serije.d.mts +5 -5
  81. package/dist/serije.d.mts.map +1 -1
  82. package/dist/serije.mjs +75 -94
  83. package/dist/serije.mjs.map +1 -1
  84. package/dist/skladisceLokacije.mjs +10 -21
  85. package/dist/skladisceLokacije.mjs.map +1 -1
  86. package/dist/smsCepljen.mjs +19 -27
  87. package/dist/smsCepljen.mjs.map +1 -1
  88. package/dist/smsCepljenjaNaDan.mjs +60 -66
  89. package/dist/smsCepljenjaNaDan.mjs.map +1 -1
  90. package/dist/smsNarocen.mjs +18 -26
  91. package/dist/smsNarocen.mjs.map +1 -1
  92. package/dist/smsNaroceniNaDan.mjs +40 -47
  93. package/dist/smsNaroceniNaDan.mjs.map +1 -1
  94. package/dist/spremembaZalogeZaObdobje.mjs +79 -90
  95. package/dist/spremembaZalogeZaObdobje.mjs.map +1 -1
  96. package/dist/spremeniZalogo.mjs +125 -132
  97. package/dist/spremeniZalogo.mjs.map +1 -1
  98. package/dist/spremeniZalogoNaPodlagiRacuna.mjs +123 -140
  99. package/dist/spremeniZalogoNaPodlagiRacuna.mjs.map +1 -1
  100. package/dist/spremeniZalogoZaDobavo.mjs +218 -221
  101. package/dist/spremeniZalogoZaDobavo.mjs.map +1 -1
  102. package/dist/spremeniZalogoZaInventuro.mjs +132 -136
  103. package/dist/spremeniZalogoZaInventuro.mjs.map +1 -1
  104. package/dist/spremeniZalogoZaPrenos.mjs +83 -114
  105. package/dist/spremeniZalogoZaPrenos.mjs.map +1 -1
  106. package/dist/spremeniZalogoZaPrevzem.mjs +70 -103
  107. package/dist/spremeniZalogoZaPrevzem.mjs.map +1 -1
  108. package/dist/strankaInfo.mjs +11 -22
  109. package/dist/strankaInfo.mjs.map +1 -1
  110. package/dist/support/poisciSpremembeMpc.js +26 -32
  111. package/dist/support/poisciSpremembeMpc.js.map +1 -1
  112. package/dist/test/dvojne-dobave.mjs +150 -163
  113. package/dist/test/dvojne-dobave.mjs.map +1 -1
  114. package/dist/test/memdb.mjs +29 -46
  115. package/dist/test/memdb.mjs.map +1 -1
  116. package/dist/test/mesane-enote.mjs +49 -62
  117. package/dist/test/mesane-enote.mjs.map +1 -1
  118. package/dist/test/prestavitev.mjs +108 -123
  119. package/dist/test/prestavitev.mjs.map +1 -1
  120. package/dist/test/serijske.mjs +303 -328
  121. package/dist/test/serijske.mjs.map +1 -1
  122. package/dist/test/sprememba-cene.mjs +213 -234
  123. package/dist/test/sprememba-cene.mjs.map +1 -1
  124. package/dist/test/sprememba-cene2.mjs +137 -154
  125. package/dist/test/sprememba-cene2.mjs.map +1 -1
  126. package/dist/test/sprememba-cene3.mjs +138 -155
  127. package/dist/test/sprememba-cene3.mjs.map +1 -1
  128. package/dist/test/sprememba-cene4.mjs +100 -115
  129. package/dist/test/sprememba-cene4.mjs.map +1 -1
  130. package/dist/test/sprememba-cene5.mjs +100 -115
  131. package/dist/test/sprememba-cene5.mjs.map +1 -1
  132. package/dist/test/sprememba-cene6.mjs +141 -158
  133. package/dist/test/sprememba-cene6.mjs.map +1 -1
  134. package/dist/test/tuja-zaloga.mjs +108 -123
  135. package/dist/test/tuja-zaloga.mjs.map +1 -1
  136. package/dist/test/zaloge.mjs +150 -173
  137. package/dist/test/zaloge.mjs.map +1 -1
  138. package/dist/test/zaloge2.mjs +160 -177
  139. package/dist/test/zaloge2.mjs.map +1 -1
  140. package/dist/types/DbFunctions.d.mts +1 -1
  141. package/dist/types/DbFunctions.d.mts.map +1 -1
  142. package/dist/types/ZalogaDbAccessor.d.mts +2 -2
  143. package/dist/types/ZalogaDbAccessor.d.mts.map +1 -1
  144. package/dist/types/nastavitve.d.mts +6 -6
  145. package/dist/types/nastavitve.d.mts.map +1 -1
  146. package/dist/updatePotrditevBrejosti.mjs +1 -1
  147. package/dist/updatePotrditevBrejosti.mjs.map +1 -1
  148. package/dist/updatePresusitve.mjs +1 -1
  149. package/dist/updatePresusitve.mjs.map +1 -1
  150. package/dist/updateStatusOsemenitve.mjs +1 -1
  151. package/dist/updateStatusOsemenitve.mjs.map +1 -1
  152. package/dist/vseSkladiscaLokacij.mjs +9 -20
  153. package/dist/vseSkladiscaLokacij.mjs.map +1 -1
  154. package/dist/vsotaDobavZaObdobje.mjs +35 -46
  155. package/dist/vsotaDobavZaObdobje.mjs.map +1 -1
  156. package/dist/zakljuciBlagovnico.mjs +46 -57
  157. package/dist/zakljuciBlagovnico.mjs.map +1 -1
  158. package/dist/zalogaDbAccessorInMem.d.mts +2 -2
  159. package/dist/zalogaDbAccessorInMem.d.mts.map +1 -1
  160. package/dist/zalogaDbAccessorInMem.mjs +58 -85
  161. package/dist/zalogaDbAccessorInMem.mjs.map +1 -1
  162. package/dist/zalogaNaDan.mjs +28 -59
  163. package/dist/zalogaNaDan.mjs.map +1 -1
  164. package/dist/zalogaNaDanIzracunana.mjs +36 -47
  165. package/dist/zalogaNaDanIzracunana.mjs.map +1 -1
  166. package/dist/zalogaPoDnevih.mjs +34 -35
  167. package/dist/zalogaPoDnevih.mjs.map +1 -1
  168. package/dist/zapisiPorabeZaDobavnice.mjs +61 -92
  169. package/dist/zapisiPorabeZaDobavnice.mjs.map +1 -1
  170. package/dist/zapisiPorabeZaObravnave.mjs +58 -89
  171. package/dist/zapisiPorabeZaObravnave.mjs.map +1 -1
  172. package/dist/zapisiPoraboZaObravnavo.mjs +51 -62
  173. package/dist/zapisiPoraboZaObravnavo.mjs.map +1 -1
  174. package/dist/zapisiZalogoPoDnevih.mjs +67 -110
  175. package/dist/zapisiZalogoPoDnevih.mjs.map +1 -1
  176. package/dist/zapisiZalogoPoDnevih_old.mjs +87 -140
  177. package/dist/zapisiZalogoPoDnevih_old.mjs.map +1 -1
  178. package/dist/zaracunajDobavnice.mjs +151 -184
  179. package/dist/zaracunajDobavnice.mjs.map +1 -1
  180. package/dist/zbrisiZalogoArtiklovKiJeNeMorejoImeti.mjs +17 -30
  181. package/dist/zbrisiZalogoArtiklovKiJeNeMorejoImeti.mjs.map +1 -1
  182. package/dist/zdruziOdprteRacune.mjs +34 -61
  183. package/dist/zdruziOdprteRacune.mjs.map +1 -1
  184. package/dist/zdruziPaciente.mjs +39 -67
  185. package/dist/zdruziPaciente.mjs.map +1 -1
  186. package/dist/zdruziStranke.mjs +103 -148
  187. package/dist/zdruziStranke.mjs.map +1 -1
  188. package/package.json +1 -1
  189. package/tsconfig.tsbuildinfo +1 -1
@@ -1,19 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __asyncValues = (this && this.__asyncValues) || function (o) {
11
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
12
- var m = o[Symbol.asyncIterator], i;
13
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
14
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
15
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
16
- };
17
1
  import { ObjectID } from './ObjectId.mjs';
18
2
  import { preracunajInventuro, vpisiSprememboZaloge } from "./preracunajZalogo.mjs";
19
3
  import { izracunajSestevkeBlagovniceRazenDobave, preracunajPostavkoBlagovniceRazenDobave } from './preracunajPostavkoBlagovnice.mjs';
@@ -21,128 +5,140 @@ import { razpisiDatum } from './razpisiDatum.mjs';
21
5
  import { poisciArtikel } from './spremeniZalogo.mjs';
22
6
  import { lahkoImaZalogo } from './lahkoImaZalogo.mjs';
23
7
  import { dodajSerijskeStevilke, odstraniSerijskeStevilkeZaArtikel, strniSerijske } from './serije.mjs';
24
- export function spremeniZalogoZaInventuro(blagovnica, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov, spremljamoSerijske, mongo, opts) {
25
- var _a, e_1, _b, _c;
26
- var _d, _e;
27
- return __awaiter(this, void 0, void 0, function* () {
28
- let inventuraZaNazaj = opts === null || opts === void 0 ? void 0 : opts.ponovnaKnjizbaZgodovineDELNA;
29
- if (inventuraZaNazaj)
30
- console.log("Inventura za nazaj", blagovnica.opomba || "", blagovnica._id);
31
- let artikli_ids = blagovnica.postavke.map(p => { var _a; return (_a = p.artikel_id) === null || _a === void 0 ? void 0 : _a.toString(); });
32
- let prejsnjeSpremembeZaDokument = yield mongo.find("spremembaZaloge", {
33
- skladisce_id: blagovnica.skladisce_id,
34
- dokument_id: blagovnica._id,
35
- artikel_id: { $in: artikli_ids },
36
- });
37
- let zaloge = yield mongo.find("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: { $in: artikli_ids } });
38
- let vpisSprememb = [];
39
- let datum = inventuraZaNazaj
40
- ? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
41
- : new Date(new Date().valueOf());
42
- let datumDokumenta = inventuraZaNazaj
43
- ? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
44
- : new Date(blagovnica.datum);
45
- try {
46
- for (var _f = true, _g = __asyncValues(blagovnica.postavke), _h; _h = yield _g.next(), _a = _h.done, !_a; _f = true) {
47
- _c = _h.value;
48
- _f = false;
49
- let postavka = _c;
50
- if (["storitev", "potrošni material"].includes(postavka.kategorija))
51
- continue;
52
- let vecEnakih = blagovnica.postavke.filter(p => p.artikel_id.toString() === postavka.artikel_id.toString()).length > 1;
53
- let zeObstajaIz = vecEnakih && !inventuraZaNazaj
54
- ? false
55
- : prejsnjeSpremembeZaDokument.find(s => s.artikel_id.toString() === postavka.artikel_id.toString());
56
- if (zeObstajaIz) {
57
- console.error("spremeniZalogoZaInventuro: postavka že razknjižena za blagovnico " + blagovnica._id, {
58
- artikel_id: postavka.artikel_id,
59
- skladisce_id: blagovnica.skladisce_id,
60
- dokument_id: blagovnica._id
61
- });
62
- continue;
63
- }
64
- ;
65
- let artikel = yield poisciArtikel(postavka.artikel_id, mongo, `(${mongo.db || "?tenant"}) ni artikla za inventuro: ${postavka.artikel_id} - ${postavka.naziv}`);
66
- if (!artikel)
67
- continue;
68
- if (!blagovnica.razknjiziCistoVse && !postavka.razknjiNeglede && !lahkoImaZalogo(artikel, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov))
69
- continue;
70
- let z = (zaloge.find(z => z.artikel_id.toString() === artikel._id)
71
- || (yield mongo.findOne("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: artikel._id })));
72
- let zaloga = z || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.skladisce_id, zaloga: 0, nbc: 0, vrednost: 0 };
73
- if (inventuraZaNazaj) {
74
- zaloga.nbc = postavka.nbc || 0;
75
- zaloga.zaloga = postavka.kolicinaPrej || 0;
76
- zaloga.vrednost = zaloga.zaloga * zaloga.nbc;
77
- }
78
- // sprememba 21.10.2024 za SVP, knjiženje za nazaj
79
- let stara_nbc = (opts === null || opts === void 0 ? void 0 : opts.pustiNbcInventure) && (opts === null || opts === void 0 ? void 0 : opts.ponovnaKnjizbaZgodovineDELNA)
80
- ? postavka.nbc
81
- : (artikel.nbc || 0);
82
- postavka.nbc = stara_nbc;
83
- let stara_nbc_na_enoto_zaloge = stara_nbc / (postavka.enotaFaktor || 1);
84
- if (postavka.popisanaKolicina === undefined) {
85
- console.error(`popisanaKolicina manjka na inventuri ${blagovnica._id} za artikel ${artikel._id}`);
86
- continue;
87
- }
88
- let sprememba = preracunajInventuro({
89
- vrstaSpremembe: 0 /* VrstaSpremembeZaloge.NASTAVI */,
90
- zaloga,
91
- kolicina: postavka.popisanaKolicina * (postavka.enotaFaktor || 1),
92
- stara_nbc: stara_nbc_na_enoto_zaloge,
93
- });
94
- zaloga = vpisiSprememboZaloge(zaloga, sprememba);
95
- yield mongo.upsert("zaloga", { artikel_id: artikel._id, skladisce_id: zaloga.skladisce_id }, {
96
- nbc: stara_nbc_na_enoto_zaloge,
97
- zaloga: sprememba.zaloga.nova,
98
- vrednost: sprememba.vrednostZaloge.nova,
99
- });
100
- postavka.kolicina = sprememba.zaloga.sprememba / (postavka.enotaFaktor || 1);
101
- preracunajPostavkoBlagovniceRazenDobave(postavka);
102
- // if (Math.abs(postavka.tnbc - sprememba.vrednostZaloge.sprememba) > .1)
103
- // console.log("spremeniZalogoZaInventuro: postavka.tnbc - sprememba.vrednostZaloge.sprememba,",postavka.tnbc, sprememba.vrednostZaloge.sprememba)
104
- // if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
105
- // console.log("račun spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
106
- vpisSprememb.push(mongo.insert("spremembaZaloge", Object.assign(Object.assign({ _id: new ObjectID().toHexString(), datum: datum }, razpisiDatum(datum)), { datumDokumenta, artikel_id: artikel._id, skladisce_id: zaloga.skladisce_id, dokument_id: blagovnica._id, vrstaSpremembe: sprememba.vrstaSpremembe, vrstaDogodka: blagovnica.vrsta, kategorija: artikel.kategorija,
107
- //partner_id: blagovnica.?._id,
108
- zaloga: sprememba.zaloga, vrednostZaloge: sprememba.vrednostZaloge, nbc: { stara: stara_nbc, nova: stara_nbc, sprememba: 0 }, dst: artikel.dstIn || artikel.dst })));
109
- // if ((Math.abs(round2(zaloga.vrednost - sprememba.vrednostZaloge.nova))) > .2)
110
- // console.log("inventura razlika zaloge", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
111
- // if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
112
- // console.log("inv spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
113
- if (spremljamoSerijske) {
114
- let spec = {
115
- artikel_id: postavka.artikel_id,
116
- skladisce_id: blagovnica.skladisce_id,
117
- vir: "inventura",
118
- uporabnik: blagovnica.izvedel,
119
- dokument_id: blagovnica._id,
120
- };
121
- yield odstraniSerijskeStevilkeZaArtikel(Object.assign(Object.assign({}, spec), { ostane: ((_d = postavka.stevilkeZdravil) === null || _d === void 0 ? void 0 : _d.length) ? 0 : postavka.popisanaKolicina }), mongo);
122
- if (!!((_e = postavka.stevilkeZdravil) === null || _e === void 0 ? void 0 : _e.length)) {
123
- let dodane = yield dodajSerijskeStevilke(Object.assign(Object.assign({}, spec), { serijske: postavka.stevilkeZdravil, stevilo: postavka.popisanaKolicina }), mongo);
124
- postavka.vtipkaneStevilkeZdravil = postavka.stevilkeZdravil;
125
- postavka.stevilkeZdravil = strniSerijske(dodane.map(a => a.serijska));
126
- }
127
- }
128
- yield mongo.upsert("artikli", { _id: artikel._id, }, { zadnjaInventura: blagovnica.datum });
129
- }
130
- }
131
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
132
- finally {
133
- try {
134
- if (!_f && !_a && (_b = _g.return)) yield _b.call(_g);
135
- }
136
- finally { if (e_1) throw e_1.error; }
8
+ export async function spremeniZalogoZaInventuro(blagovnica, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov, spremljamoSerijske, mongo, opts) {
9
+ var _a, _b;
10
+ let inventuraZaNazaj = opts === null || opts === void 0 ? void 0 : opts.ponovnaKnjizbaZgodovineDELNA;
11
+ if (inventuraZaNazaj)
12
+ console.log("Inventura za nazaj", blagovnica.opomba || "", blagovnica._id);
13
+ let artikli_ids = blagovnica.postavke.map(p => { var _a; return (_a = p.artikel_id) === null || _a === void 0 ? void 0 : _a.toString(); });
14
+ let prejsnjeSpremembeZaDokument = await mongo.find("spremembaZaloge", {
15
+ skladisce_id: blagovnica.skladisce_id,
16
+ dokument_id: blagovnica._id,
17
+ artikel_id: { $in: artikli_ids },
18
+ });
19
+ let zaloge = await mongo.find("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: { $in: artikli_ids } });
20
+ let vpisSprememb = [];
21
+ let datum = inventuraZaNazaj
22
+ ? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
23
+ : new Date(new Date().valueOf());
24
+ let datumDokumenta = inventuraZaNazaj
25
+ ? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
26
+ : new Date(blagovnica.datum);
27
+ for await (let postavka of blagovnica.postavke) {
28
+ if (["storitev", "potrošni material"].includes(postavka.kategorija))
29
+ continue;
30
+ let vecEnakih = blagovnica.postavke.filter(p => p.artikel_id.toString() === postavka.artikel_id.toString()).length > 1;
31
+ let zeObstajaIz = vecEnakih && !inventuraZaNazaj
32
+ ? false
33
+ : prejsnjeSpremembeZaDokument.find(s => s.artikel_id.toString() === postavka.artikel_id.toString());
34
+ if (zeObstajaIz) {
35
+ console.error("spremeniZalogoZaInventuro: postavka že razknjižena za blagovnico " + blagovnica._id, {
36
+ artikel_id: postavka.artikel_id,
37
+ skladisce_id: blagovnica.skladisce_id,
38
+ dokument_id: blagovnica._id
39
+ });
40
+ continue;
137
41
  }
138
- let sprememba = Object.assign(Object.assign(Object.assign({ postavke: blagovnica.postavke, razknjizena: new Date() }, izracunajSestevkeBlagovniceRazenDobave(blagovnica.postavke)), razpisiDatum(blagovnica.datum)), { x: 1 });
42
+ ;
43
+ let artikel = await poisciArtikel(postavka.artikel_id, mongo, `(${mongo.db || "?tenant"}) ni artikla za inventuro: ${postavka.artikel_id} - ${postavka.naziv}`);
44
+ if (!artikel)
45
+ continue;
46
+ if (!blagovnica.razknjiziCistoVse && !postavka.razknjiNeglede && !lahkoImaZalogo(artikel, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov))
47
+ continue;
48
+ let z = (zaloge.find(z => z.artikel_id.toString() === artikel._id)
49
+ || await mongo.findOne("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: artikel._id }));
50
+ let zaloga = z || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.skladisce_id, zaloga: 0, nbc: 0, vrednost: 0 };
139
51
  if (inventuraZaNazaj) {
140
- sprememba.datum = datum;
141
- sprememba.datumDokumenta = datumDokumenta;
52
+ zaloga.nbc = postavka.nbc || 0;
53
+ zaloga.zaloga = postavka.kolicinaPrej || 0;
54
+ zaloga.vrednost = zaloga.zaloga * zaloga.nbc;
142
55
  }
143
- yield Promise.all(vpisSprememb);
144
- yield mongo.upsert("blagovnice", { _id: blagovnica._id }, sprememba);
145
- return false;
146
- });
56
+ // sprememba 21.10.2024 za SVP, knjiženje za nazaj
57
+ let stara_nbc = (opts === null || opts === void 0 ? void 0 : opts.pustiNbcInventure) && (opts === null || opts === void 0 ? void 0 : opts.ponovnaKnjizbaZgodovineDELNA)
58
+ ? postavka.nbc
59
+ : (artikel.nbc || 0);
60
+ postavka.nbc = stara_nbc;
61
+ let stara_nbc_na_enoto_zaloge = stara_nbc / (postavka.enotaFaktor || 1);
62
+ if (postavka.popisanaKolicina === undefined) {
63
+ console.error(`popisanaKolicina manjka na inventuri ${blagovnica._id} za artikel ${artikel._id}`);
64
+ continue;
65
+ }
66
+ let sprememba = preracunajInventuro({
67
+ vrstaSpremembe: 0 /* VrstaSpremembeZaloge.NASTAVI */,
68
+ zaloga,
69
+ kolicina: postavka.popisanaKolicina * (postavka.enotaFaktor || 1),
70
+ stara_nbc: stara_nbc_na_enoto_zaloge,
71
+ });
72
+ zaloga = vpisiSprememboZaloge(zaloga, sprememba);
73
+ await mongo.upsert("zaloga", { artikel_id: artikel._id, skladisce_id: zaloga.skladisce_id }, {
74
+ nbc: stara_nbc_na_enoto_zaloge,
75
+ zaloga: sprememba.zaloga.nova,
76
+ vrednost: sprememba.vrednostZaloge.nova,
77
+ });
78
+ postavka.kolicina = sprememba.zaloga.sprememba / (postavka.enotaFaktor || 1);
79
+ preracunajPostavkoBlagovniceRazenDobave(postavka);
80
+ // if (Math.abs(postavka.tnbc - sprememba.vrednostZaloge.sprememba) > .1)
81
+ // console.log("spremeniZalogoZaInventuro: postavka.tnbc - sprememba.vrednostZaloge.sprememba,",postavka.tnbc, sprememba.vrednostZaloge.sprememba)
82
+ // if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
83
+ // console.log("račun spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
84
+ vpisSprememb.push(mongo.insert("spremembaZaloge", {
85
+ _id: new ObjectID().toHexString(),
86
+ datum: datum,
87
+ ...razpisiDatum(datum),
88
+ datumDokumenta,
89
+ artikel_id: artikel._id,
90
+ skladisce_id: zaloga.skladisce_id,
91
+ dokument_id: blagovnica._id,
92
+ vrstaSpremembe: sprememba.vrstaSpremembe,
93
+ vrstaDogodka: blagovnica.vrsta,
94
+ kategorija: artikel.kategorija,
95
+ //partner_id: blagovnica.?._id,
96
+ zaloga: sprememba.zaloga,
97
+ vrednostZaloge: sprememba.vrednostZaloge,
98
+ nbc: { stara: stara_nbc, nova: stara_nbc, sprememba: 0 },
99
+ dst: artikel.dstIn || artikel.dst,
100
+ }));
101
+ // if ((Math.abs(round2(zaloga.vrednost - sprememba.vrednostZaloge.nova))) > .2)
102
+ // console.log("inventura razlika zaloge", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
103
+ // if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
104
+ // console.log("inv spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
105
+ if (spremljamoSerijske) {
106
+ let spec = {
107
+ artikel_id: postavka.artikel_id,
108
+ skladisce_id: blagovnica.skladisce_id,
109
+ vir: "inventura",
110
+ uporabnik: blagovnica.izvedel,
111
+ dokument_id: blagovnica._id,
112
+ };
113
+ await odstraniSerijskeStevilkeZaArtikel({
114
+ ...spec,
115
+ ostane: ((_a = postavka.stevilkeZdravil) === null || _a === void 0 ? void 0 : _a.length) ? 0 : postavka.popisanaKolicina
116
+ }, mongo);
117
+ if (!!((_b = postavka.stevilkeZdravil) === null || _b === void 0 ? void 0 : _b.length)) {
118
+ let dodane = await dodajSerijskeStevilke({
119
+ ...spec,
120
+ serijske: postavka.stevilkeZdravil,
121
+ stevilo: postavka.popisanaKolicina,
122
+ }, mongo);
123
+ postavka.vtipkaneStevilkeZdravil = postavka.stevilkeZdravil;
124
+ postavka.stevilkeZdravil = strniSerijske(dodane.map(a => a.serijska));
125
+ }
126
+ }
127
+ await mongo.upsert("artikli", { _id: artikel._id, }, { zadnjaInventura: blagovnica.datum });
128
+ }
129
+ let sprememba = {
130
+ postavke: blagovnica.postavke,
131
+ razknjizena: new Date(),
132
+ ...izracunajSestevkeBlagovniceRazenDobave(blagovnica.postavke),
133
+ ...razpisiDatum(blagovnica.datum),
134
+ x: 1,
135
+ };
136
+ if (inventuraZaNazaj) {
137
+ sprememba.datum = datum;
138
+ sprememba.datumDokumenta = datumDokumenta;
139
+ }
140
+ await Promise.all(vpisSprememb);
141
+ await mongo.upsert("blagovnice", { _id: blagovnica._id }, sprememba);
142
+ return false;
147
143
  }
148
144
  //# sourceMappingURL=spremeniZalogoZaInventuro.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"spremeniZalogoZaInventuro.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaInventuro.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spremeniZalogoZaInventuro.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaInventuro.mts"],"names":[],"mappings":"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"}
@@ -1,126 +1,95 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
- var __asyncValues = (this && this.__asyncValues) || function (o) {
11
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
12
- var m = o[Symbol.asyncIterator], i;
13
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
14
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
15
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
16
- };
17
1
  import cloneDeep from 'lodash.clonedeep';
18
2
  import { ObjectID } from './ObjectId.mjs';
19
3
  import { poisciArtikel, _poknjiziPoraboZaloge } from './spremeniZalogo.mjs';
20
4
  import { lahkoImaZalogo } from './lahkoImaZalogo.mjs';
21
5
  import { prestaviSerijskeStevilkeMedSkladisci } from './serije.mjs';
22
6
  import dayjs from './dayjs.mjs';
23
- export function spremeniZalogoZaPrenos(blagovnica, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov, spremljamoSerijske, mongo) {
24
- var _a, e_1, _b, _c;
25
- return __awaiter(this, void 0, void 0, function* () {
26
- // pri prenosu: vhodno blagovnico spremenimo v "iznos",
27
- // nato naredimo podvojeno blagovnico "vnos"
28
- let iznos = blagovnica;
29
- iznos.vrsta = "iznos";
30
- iznos.skladisce_id = blagovnica.iz_skladisca_id;
31
- iznos.lokacija_id = blagovnica.z_lokacije_id;
32
- let vnos = cloneDeep(blagovnica);
33
- vnos._id = new ObjectID().toHexString();
34
- vnos.zapSt = "SEQ_NEXT";
35
- vnos.vrsta = "vnos";
36
- vnos.razknjizena = new Date();
37
- vnos.skladisce_id = blagovnica.v_skladisce_id;
38
- vnos.lokacija_id = blagovnica.na_lokacijo_id;
39
- yield mongo.insert("blagovnice", vnos);
40
- yield mongo.upsert("blagovnice", { _id: iznos._id }, {
41
- vrsta: iznos.vrsta,
42
- lokacija_id: iznos.lokacija_id,
43
- skladisce_id: iznos.skladisce_id,
7
+ export async function spremeniZalogoZaPrenos(blagovnica, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov, spremljamoSerijske, mongo) {
8
+ // pri prenosu: vhodno blagovnico spremenimo v "iznos",
9
+ // nato naredimo podvojeno blagovnico "vnos"
10
+ let iznos = blagovnica;
11
+ iznos.vrsta = "iznos";
12
+ iznos.skladisce_id = blagovnica.iz_skladisca_id;
13
+ iznos.lokacija_id = blagovnica.z_lokacije_id;
14
+ let vnos = cloneDeep(blagovnica);
15
+ vnos._id = new ObjectID().toHexString();
16
+ vnos.zapSt = "SEQ_NEXT";
17
+ vnos.vrsta = "vnos";
18
+ vnos.razknjizena = new Date();
19
+ vnos.skladisce_id = blagovnica.v_skladisce_id;
20
+ vnos.lokacija_id = blagovnica.na_lokacijo_id;
21
+ await mongo.insert("blagovnice", vnos);
22
+ await mongo.upsert("blagovnice", { _id: iznos._id }, {
23
+ vrsta: iznos.vrsta,
24
+ lokacija_id: iznos.lokacija_id,
25
+ skladisce_id: iznos.skladisce_id,
26
+ });
27
+ let vpisaliSmoSerijske = false;
28
+ for await (let postavka of blagovnica.postavke) {
29
+ if (["storitev", "potrošni material"].includes(postavka.kategorija))
30
+ continue;
31
+ let vecEnakih = blagovnica.postavke.filter(p => p.artikel_id.toString() === postavka.artikel_id.toString()).length > 1;
32
+ let zeObstajaIz = vecEnakih ? false : await mongo.findOne("spremembaZaloge", {
33
+ artikel_id: postavka.artikel_id,
34
+ skladisce_id: blagovnica.iz_skladisca_id,
35
+ dokument_id: blagovnica._id
44
36
  });
45
- let vpisaliSmoSerijske = false;
46
- try {
47
- for (var _d = true, _e = __asyncValues(blagovnica.postavke), _f; _f = yield _e.next(), _a = _f.done, !_a; _d = true) {
48
- _c = _f.value;
49
- _d = false;
50
- let postavka = _c;
51
- if (["storitev", "potrošni material"].includes(postavka.kategorija))
52
- continue;
53
- let vecEnakih = blagovnica.postavke.filter(p => p.artikel_id.toString() === postavka.artikel_id.toString()).length > 1;
54
- let zeObstajaIz = vecEnakih ? false : yield mongo.findOne("spremembaZaloge", {
55
- artikel_id: postavka.artikel_id,
56
- skladisce_id: blagovnica.iz_skladisca_id,
57
- dokument_id: blagovnica._id
58
- });
59
- if (zeObstajaIz) {
60
- console.error("spremeniZalogoZaPrenos: postavka že razknjižena za blagovnico (vnos) " + blagovnica._id, {
61
- artikel_id: postavka.artikel_id,
62
- skladisce_id: blagovnica.iz_skladisca_id,
63
- dokument_id: blagovnica._id
64
- });
65
- continue;
66
- }
67
- ;
68
- let zeObstajaV = yield mongo.findOne("spremembaZaloge", {
69
- artikel_id: postavka.artikel_id,
70
- skladisce_id: blagovnica.v_skladisce_id,
71
- dokument_id: blagovnica._id
72
- });
73
- if (zeObstajaV) {
74
- console.error("spremeniZalogoZaPrenos: postavka že razknjižena za blagovnico (iznos) " + blagovnica._id, {
75
- artikel_id: postavka.artikel_id,
76
- skladisce_id: blagovnica.v_skladisce_id,
77
- dokument_id: blagovnica._id
78
- });
79
- continue;
80
- }
81
- let artikel = yield poisciArtikel(postavka.artikel_id, mongo, `ni artikla za prenos: ${postavka.artikel_id} - ${postavka.naziv}`);
82
- if (!artikel)
83
- continue;
84
- if (!lahkoImaZalogo(artikel, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov))
85
- continue;
86
- if (artikel.zadnjaInventura && dayjs(artikel.zadnjaInventura).isAfter(blagovnica.datum)) {
87
- console.warn(`preskoči knjižbo prenosa po zadnji inventuri (datum računa ${dayjs(blagovnica.datum).format("D.M.YYYY")}, artikel ${artikel._id} ${artikel.naziv}, zadnja inventura ${dayjs(artikel.zadnjaInventura).format("D.M.YYYY")}`);
88
- continue;
89
- }
90
- let iz_zaloge = yield mongo.findOne("zaloga", { skladisce_id: blagovnica.iz_skladisca_id, artikel_id: artikel._id, });
91
- iz_zaloge = iz_zaloge || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.iz_skladisca_id, zaloga: 0, nbc: 0, vrednost: 0 };
92
- let na_zalogo = yield mongo.findOne("zaloga", { skladisce_id: blagovnica.v_skladisce_id, artikel_id: artikel._id, });
93
- na_zalogo = na_zalogo || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.v_skladisce_id, zaloga: 0, nbc: 0, vrednost: 0 };
94
- let stara_nbc = artikel.nbc || 0;
95
- yield _poknjiziPoraboZaloge(iz_zaloge, "iznos", postavka, stara_nbc, mongo, artikel, iznos);
96
- yield _poknjiziPoraboZaloge(na_zalogo, "vnos", postavka, stara_nbc, mongo, artikel, vnos);
97
- if (spremljamoSerijske && postavka.stevilkeZdravil) {
98
- let vpisane = yield prestaviSerijskeStevilkeMedSkladisci({
99
- artikel_id: postavka.artikel_id,
100
- iz_skladisca_id: blagovnica.iz_skladisca_id,
101
- v_skladisce_id: blagovnica.v_skladisce_id,
102
- vir: "prenos",
103
- dokument_id: blagovnica._id,
104
- uporabnik: blagovnica.izvedel,
105
- serijske: postavka.stevilkeZdravil,
106
- stevilo: postavka.kolicina,
107
- }, mongo);
108
- if (vpisane.length) {
109
- vpisaliSmoSerijske = true;
110
- postavka.vtipkaneStevilkeZdravil = postavka.stevilkeZdravil;
111
- postavka.stevilkeZdravil = vpisane;
112
- }
113
- }
114
- }
37
+ if (zeObstajaIz) {
38
+ console.error("spremeniZalogoZaPrenos: postavka že razknjižena za blagovnico (vnos) " + blagovnica._id, {
39
+ artikel_id: postavka.artikel_id,
40
+ skladisce_id: blagovnica.iz_skladisca_id,
41
+ dokument_id: blagovnica._id
42
+ });
43
+ continue;
115
44
  }
116
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
117
- finally {
118
- try {
119
- if (!_d && !_a && (_b = _e.return)) yield _b.call(_e);
45
+ ;
46
+ let zeObstajaV = await mongo.findOne("spremembaZaloge", {
47
+ artikel_id: postavka.artikel_id,
48
+ skladisce_id: blagovnica.v_skladisce_id,
49
+ dokument_id: blagovnica._id
50
+ });
51
+ if (zeObstajaV) {
52
+ console.error("spremeniZalogoZaPrenos: postavka že razknjižena za blagovnico (iznos) " + blagovnica._id, {
53
+ artikel_id: postavka.artikel_id,
54
+ skladisce_id: blagovnica.v_skladisce_id,
55
+ dokument_id: blagovnica._id
56
+ });
57
+ continue;
58
+ }
59
+ let artikel = await poisciArtikel(postavka.artikel_id, mongo, `ni artikla za prenos: ${postavka.artikel_id} - ${postavka.naziv}`);
60
+ if (!artikel)
61
+ continue;
62
+ if (!lahkoImaZalogo(artikel, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov))
63
+ continue;
64
+ if (artikel.zadnjaInventura && dayjs(artikel.zadnjaInventura).isAfter(blagovnica.datum)) {
65
+ console.warn(`preskoči knjižbo prenosa po zadnji inventuri (datum računa ${dayjs(blagovnica.datum).format("D.M.YYYY")}, artikel ${artikel._id} ${artikel.naziv}, zadnja inventura ${dayjs(artikel.zadnjaInventura).format("D.M.YYYY")}`);
66
+ continue;
67
+ }
68
+ let iz_zaloge = await mongo.findOne("zaloga", { skladisce_id: blagovnica.iz_skladisca_id, artikel_id: artikel._id, });
69
+ iz_zaloge = iz_zaloge || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.iz_skladisca_id, zaloga: 0, nbc: 0, vrednost: 0 };
70
+ let na_zalogo = await mongo.findOne("zaloga", { skladisce_id: blagovnica.v_skladisce_id, artikel_id: artikel._id, });
71
+ na_zalogo = na_zalogo || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.v_skladisce_id, zaloga: 0, nbc: 0, vrednost: 0 };
72
+ let stara_nbc = artikel.nbc || 0;
73
+ await _poknjiziPoraboZaloge(iz_zaloge, "iznos", postavka, stara_nbc, mongo, artikel, iznos);
74
+ await _poknjiziPoraboZaloge(na_zalogo, "vnos", postavka, stara_nbc, mongo, artikel, vnos);
75
+ if (spremljamoSerijske && postavka.stevilkeZdravil) {
76
+ let vpisane = await prestaviSerijskeStevilkeMedSkladisci({
77
+ artikel_id: postavka.artikel_id,
78
+ iz_skladisca_id: blagovnica.iz_skladisca_id,
79
+ v_skladisce_id: blagovnica.v_skladisce_id,
80
+ vir: "prenos",
81
+ dokument_id: blagovnica._id,
82
+ uporabnik: blagovnica.izvedel,
83
+ serijske: postavka.stevilkeZdravil,
84
+ stevilo: postavka.kolicina,
85
+ }, mongo);
86
+ if (vpisane.length) {
87
+ vpisaliSmoSerijske = true;
88
+ postavka.vtipkaneStevilkeZdravil = postavka.stevilkeZdravil;
89
+ postavka.stevilkeZdravil = vpisane;
120
90
  }
121
- finally { if (e_1) throw e_1.error; }
122
91
  }
123
- return vpisaliSmoSerijske;
124
- });
92
+ }
93
+ return vpisaliSmoSerijske;
125
94
  }
126
95
  //# sourceMappingURL=spremeniZalogoZaPrenos.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"spremeniZalogoZaPrenos.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaPrenos.mts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C,OAAO,EAAE,aAAa,EAAiC,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE3G,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,oCAAoC,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,MAAM,aAAa,CAAC;AAEhC,MAAM,UAAgB,sBAAsB,CAAC,UAAkB,EAAE,wBAAiD,EAAE,yBAA4D,EAAE,kBAA2B,EAAE,KAAuB;;;QAElO,uDAAuD;QACvD,4CAA4C;QAC5C,IAAI,KAAK,GAAG,UAA4B,CAAC;QACzC,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC;QACtB,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC,eAAe,CAAC;QAChD,KAAK,CAAC,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC;QAE7C,IAAI,IAAI,GAAG,SAAS,CAAC,UAAU,CAAkB,CAAC;QAClD,IAAI,CAAC,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAA;QACvB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC;QAE7C,MAAM,KAAK,CAAC,MAAM,CAAa,YAAY,EAAE,IAAI,CAAC,CAAC;QACnD,MAAM,KAAK,CAAC,MAAM,CAAa,YAAY,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,EAAE;YAC7D,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;SACnC,CAAC,CAAC;QAEH,IAAI,kBAAkB,GAAG,KAAK,CAAC;;YAE/B,KAA2B,eAAA,KAAA,cAAA,UAAU,CAAC,QAAQ,CAAA,IAAA,sDAAE;gBAArB,cAAmB;gBAAnB,WAAmB;gBAAnC,IAAI,QAAQ,KAAA,CAAA;gBAEnB,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC/D,SAAS;gBAEb,IAAI,SAAS,GAAI,UAAU,CAAC,QAAqC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;gBACrJ,IAAI,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,OAAO,CAAkB,iBAAiB,EAAE;oBAC1F,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,YAAY,EAAE,UAAU,CAAC,eAAe;oBACxC,WAAW,EAAE,UAAU,CAAC,GAAG;iBAC9B,CAAC,CAAA;gBACF,IAAI,WAAW,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,uEAAuE,GAAG,UAAU,CAAC,GAAG,EAAE;wBACpG,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,YAAY,EAAE,UAAU,CAAC,eAAe;wBACxC,WAAW,EAAE,UAAU,CAAC,GAAG;qBAC9B,CAAC,CAAA;oBACF,SAAS;iBACZ;gBAAA,CAAC;gBAEF,IAAI,UAAU,GAAG,MAAM,KAAK,CAAC,OAAO,CAAkB,iBAAiB,EAAE;oBACrE,UAAU,EAAE,QAAQ,CAAC,UAAU;oBAC/B,YAAY,EAAE,UAAU,CAAC,cAAc;oBACvC,WAAW,EAAE,UAAU,CAAC,GAAG;iBAC9B,CAAC,CAAA;gBACF,IAAI,UAAU,EAAE;oBACZ,OAAO,CAAC,KAAK,CAAC,wEAAwE,GAAG,UAAU,CAAC,GAAG,EAAE;wBACrG,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,YAAY,EAAE,UAAU,CAAC,cAAc;wBACvC,WAAW,EAAE,UAAU,CAAC,GAAG;qBAC9B,CAAC,CAAA;oBACF,SAAS;iBACZ;gBAED,IAAI,OAAO,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAK,EAAE,yBAAyB,QAAQ,CAAC,UAAU,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClI,IAAI,CAAC,OAAO;oBAAE,SAAS;gBACvB,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,CAAC;oBAAE,SAAS;gBAE5F,IAAI,OAAO,CAAC,eAAe,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;oBACrF,OAAO,CAAC,IAAI,CAAC,8DAA8D,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,KAAK,sBAAsB,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;oBACxO,SAAS;iBACZ;gBAED,IAAI,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAS,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,eAAe,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC9H,SAAS,GAAG,SAAS,IAAI,EAAE,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,GAAI,EAAE,YAAY,EAAE,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAEnK,IAAI,SAAS,GAAG,MAAM,KAAK,CAAC,OAAO,CAAS,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC7H,SAAS,GAAG,SAAS,IAAI,EAAE,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC,WAAW,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,GAAI,EAAE,YAAY,EAAE,UAAU,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;gBAElK,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;gBAEjC,MAAM,qBAAqB,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5F,MAAM,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;gBAE1F,IAAI,kBAAkB,IAAI,QAAQ,CAAC,eAAe,EAAE;oBAChD,IAAI,OAAO,GAAG,MAAM,oCAAoC,CAAC;wBACrD,UAAU,EAAE,QAAQ,CAAC,UAAU;wBAC/B,eAAe,EAAE,UAAU,CAAC,eAAe;wBAC3C,cAAc,EAAE,UAAU,CAAC,cAAc;wBACzC,GAAG,EAAE,QAAQ;wBACb,WAAW,EAAE,UAAU,CAAC,GAAG;wBAC3B,SAAS,EAAE,UAAU,CAAC,OAAO;wBAC7B,QAAQ,EAAE,QAAQ,CAAC,eAAe;wBAClC,OAAO,EAAE,QAAQ,CAAC,QAAQ;qBAC7B,EAAE,KAAK,CAAC,CAAC;oBACV,IAAI,OAAO,CAAC,MAAM,EAAE;wBAChB,kBAAkB,GAAG,IAAI,CAAC;wBAC1B,QAAQ,CAAC,uBAAuB,GAAG,QAAQ,CAAC,eAAe,CAAC;wBAC5D,QAAQ,CAAC,eAAe,GAAG,OAAO,CAAC;qBACtC;iBACJ;aAEJ;;;;;;;;;QAED,OAAO,kBAAkB,CAAC;;CAE7B"}
1
+ {"version":3,"file":"spremeniZalogoZaPrenos.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaPrenos.mts"],"names":[],"mappings":"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"}