cry-klikvet-logic 1.0.225 → 1.0.226
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/dist/anonimizirajPodatke.mjs +423 -655
- package/dist/anonimizirajPodatke.mjs.map +1 -1
- package/dist/besediloKarence.mjs +13 -16
- package/dist/besediloKarence.mjs.map +1 -1
- package/dist/blagovnicaZaSpremembeZaloge.mjs +61 -64
- package/dist/blagovnicaZaSpremembeZaloge.mjs.map +1 -1
- package/dist/certs.mjs +13 -26
- package/dist/certs.mjs.map +1 -1
- package/dist/dopisiSerijskeNaNapravi.d.mts.map +1 -1
- package/dist/dopisiSerijskeNaNapravi.mjs +32 -65
- package/dist/dopisiSerijskeNaNapravi.mjs.map +1 -1
- package/dist/ensureIndexes.mjs +143 -159
- package/dist/ensureIndexes.mjs.map +1 -1
- package/dist/fmtDateRange.mjs +4 -5
- package/dist/fmtDateRange.mjs.map +1 -1
- package/dist/idjiArtiklovKiImajoLahkoZalogo.mjs +12 -23
- package/dist/idjiArtiklovKiImajoLahkoZalogo.mjs.map +1 -1
- package/dist/karticaArtikla.mjs +126 -141
- package/dist/karticaArtikla.mjs.map +1 -1
- package/dist/koledar.mjs +24 -35
- package/dist/koledar.mjs.map +1 -1
- package/dist/maint/nastaviNbcArtiklomIzMpc.mjs +27 -58
- package/dist/maint/nastaviNbcArtiklomIzMpc.mjs.map +1 -1
- package/dist/maint/poisciNapakeVSpremembiZaloge.mjs +49 -60
- package/dist/maint/poisciNapakeVSpremembiZaloge.mjs.map +1 -1
- package/dist/maint/poknjiziVsoZgodovino.mjs +243 -338
- package/dist/maint/poknjiziVsoZgodovino.mjs.map +1 -1
- package/dist/maint/popraviNabaveCeneNaRacunih.mjs +16 -48
- package/dist/maint/popraviNabaveCeneNaRacunih.mjs.map +1 -1
- package/dist/maint/popraviNabavneCeneNaInventurah.mjs +14 -46
- package/dist/maint/popraviNabavneCeneNaInventurah.mjs.map +1 -1
- package/dist/models/Serijske.d.mts +1 -1
- package/dist/models/Serijske.d.mts.map +1 -1
- package/dist/nazivStranke.mjs +1 -2
- package/dist/nazivStranke.mjs.map +1 -1
- package/dist/neuporabljeno.mjs +25 -59
- package/dist/neuporabljeno.mjs.map +1 -1
- package/dist/parseSerijaStr.d.mts +1 -1
- package/dist/parseSerijaStr.d.mts.map +1 -1
- package/dist/parseSerijaStr.mjs +12 -9
- package/dist/parseSerijaStr.mjs.map +1 -1
- package/dist/pobrisiZgodovinoNaDan.mjs +17 -28
- package/dist/pobrisiZgodovinoNaDan.mjs.map +1 -1
- package/dist/podatkiRejca.mjs +113 -124
- package/dist/podatkiRejca.mjs.map +1 -1
- package/dist/poisciSerijskeZaNapravo.mjs +20 -52
- package/dist/poisciSerijskeZaNapravo.mjs.map +1 -1
- package/dist/polnaInventura.mjs +110 -131
- package/dist/polnaInventura.mjs.map +1 -1
- package/dist/porabaZaDobavnico.mjs +16 -1
- package/dist/porabaZaDobavnico.mjs.map +1 -1
- package/dist/porabaZaObravnavo.mjs +22 -10
- package/dist/porabaZaObravnavo.mjs.map +1 -1
- package/dist/preveriKnjizenjeZalogeArtikla.mjs +97 -111
- package/dist/preveriKnjizenjeZalogeArtikla.mjs.map +1 -1
- package/dist/q-blagovnice.mjs +12 -24
- package/dist/q-blagovnice.mjs.map +1 -1
- package/dist/q-isciPoObravnavah.mjs +25 -36
- package/dist/q-isciPoObravnavah.mjs.map +1 -1
- package/dist/q-isciPoRacunih.mjs +26 -37
- package/dist/q-isciPoRacunih.mjs.map +1 -1
- package/dist/q-mojPromet.mjs +24 -35
- package/dist/q-mojPromet.mjs.map +1 -1
- package/dist/q-porabaZdravil.mjs +110 -113
- package/dist/q-porabaZdravil.mjs.map +1 -1
- package/dist/q-prodano.mjs +36 -47
- package/dist/q-prodano.mjs.map +1 -1
- package/dist/q-prodanoPorabljeno.mjs +47 -48
- package/dist/q-prodanoPorabljeno.mjs.map +1 -1
- package/dist/q-promet.mjs +24 -35
- package/dist/q-promet.mjs.map +1 -1
- package/dist/q-racunovodji.mjs +229 -239
- package/dist/q-racunovodji.mjs.map +1 -1
- package/dist/q-skupineIzdelkov.mjs +20 -31
- package/dist/q-skupineIzdelkov.mjs.map +1 -1
- package/dist/q-skupineStrank.mjs +20 -31
- package/dist/q-skupineStrank.mjs.map +1 -1
- package/dist/q-strankeKlasificiraj.mjs +58 -69
- package/dist/q-strankeKlasificiraj.mjs.map +1 -1
- package/dist/q-strankeZadnjiObiski.mjs +22 -33
- package/dist/q-strankeZadnjiObiski.mjs.map +1 -1
- package/dist/q-zakljucek-blagajne.mjs +135 -150
- package/dist/q-zakljucek-blagajne.mjs.map +1 -1
- package/dist/razknjiziBlagovnico.mjs +46 -57
- package/dist/razknjiziBlagovnico.mjs.map +1 -1
- package/dist/razknjiziDobavnico.mjs +47 -58
- package/dist/razknjiziDobavnico.mjs.map +1 -1
- package/dist/serije.d.mts +5 -5
- package/dist/serije.d.mts.map +1 -1
- package/dist/serije.mjs +76 -97
- package/dist/serije.mjs.map +1 -1
- package/dist/skladisceLokacije.mjs +10 -21
- package/dist/skladisceLokacije.mjs.map +1 -1
- package/dist/smsCepljen.mjs +19 -28
- package/dist/smsCepljen.mjs.map +1 -1
- package/dist/smsCepljenjaNaDan.mjs +60 -67
- package/dist/smsCepljenjaNaDan.mjs.map +1 -1
- package/dist/smsNarocen.mjs +18 -26
- package/dist/smsNarocen.mjs.map +1 -1
- package/dist/smsNaroceniNaDan.mjs +40 -48
- package/dist/smsNaroceniNaDan.mjs.map +1 -1
- package/dist/spremembaZalogeZaObdobje.mjs +78 -91
- package/dist/spremembaZalogeZaObdobje.mjs.map +1 -1
- package/dist/spremeniZalogo.mjs +125 -132
- package/dist/spremeniZalogo.mjs.map +1 -1
- package/dist/spremeniZalogoNaPodlagiRacuna.mjs +122 -140
- package/dist/spremeniZalogoNaPodlagiRacuna.mjs.map +1 -1
- package/dist/spremeniZalogoZaDobavo.mjs +218 -221
- package/dist/spremeniZalogoZaDobavo.mjs.map +1 -1
- package/dist/spremeniZalogoZaInventuro.mjs +131 -136
- package/dist/spremeniZalogoZaInventuro.mjs.map +1 -1
- package/dist/spremeniZalogoZaPrenos.mjs +83 -114
- package/dist/spremeniZalogoZaPrenos.mjs.map +1 -1
- package/dist/spremeniZalogoZaPrevzem.mjs +69 -103
- package/dist/spremeniZalogoZaPrevzem.mjs.map +1 -1
- package/dist/strankaInfo.mjs +11 -22
- package/dist/strankaInfo.mjs.map +1 -1
- package/dist/support/poisciSpremembeMpc.js +26 -32
- package/dist/support/poisciSpremembeMpc.js.map +1 -1
- package/dist/test/dvojne-dobave.mjs +150 -163
- package/dist/test/dvojne-dobave.mjs.map +1 -1
- package/dist/test/memdb.mjs +29 -46
- package/dist/test/memdb.mjs.map +1 -1
- package/dist/test/mesane-enote.mjs +49 -62
- package/dist/test/mesane-enote.mjs.map +1 -1
- package/dist/test/prestavitev.mjs +108 -123
- package/dist/test/prestavitev.mjs.map +1 -1
- package/dist/test/serijske.mjs +303 -328
- package/dist/test/serijske.mjs.map +1 -1
- package/dist/test/sprememba-cene.mjs +213 -234
- package/dist/test/sprememba-cene.mjs.map +1 -1
- package/dist/test/sprememba-cene2.mjs +137 -154
- package/dist/test/sprememba-cene2.mjs.map +1 -1
- package/dist/test/sprememba-cene3.mjs +138 -155
- package/dist/test/sprememba-cene3.mjs.map +1 -1
- package/dist/test/sprememba-cene4.mjs +100 -115
- package/dist/test/sprememba-cene4.mjs.map +1 -1
- package/dist/test/sprememba-cene5.mjs +100 -115
- package/dist/test/sprememba-cene5.mjs.map +1 -1
- package/dist/test/sprememba-cene6.mjs +141 -158
- package/dist/test/sprememba-cene6.mjs.map +1 -1
- package/dist/test/tuja-zaloga.mjs +108 -123
- package/dist/test/tuja-zaloga.mjs.map +1 -1
- package/dist/test/zaloge.mjs +150 -173
- package/dist/test/zaloge.mjs.map +1 -1
- package/dist/test/zaloge2.mjs +160 -177
- package/dist/test/zaloge2.mjs.map +1 -1
- package/dist/types/DbFunctions.d.mts +1 -1
- package/dist/types/DbFunctions.d.mts.map +1 -1
- package/dist/types/ZalogaDbAccessor.d.mts +2 -2
- package/dist/types/ZalogaDbAccessor.d.mts.map +1 -1
- package/dist/types/nastavitve.d.mts +6 -6
- package/dist/types/nastavitve.d.mts.map +1 -1
- package/dist/updatePotrditevBrejosti.mjs +1 -1
- package/dist/updatePotrditevBrejosti.mjs.map +1 -1
- package/dist/updatePresusitve.mjs +1 -1
- package/dist/updatePresusitve.mjs.map +1 -1
- package/dist/updateStatusOsemenitve.mjs +1 -1
- package/dist/updateStatusOsemenitve.mjs.map +1 -1
- package/dist/vseSkladiscaLokacij.mjs +9 -20
- package/dist/vseSkladiscaLokacij.mjs.map +1 -1
- package/dist/vsotaDobavZaObdobje.mjs +35 -47
- package/dist/vsotaDobavZaObdobje.mjs.map +1 -1
- package/dist/zakljuciBlagovnico.mjs +46 -57
- package/dist/zakljuciBlagovnico.mjs.map +1 -1
- package/dist/zalogaDbAccessorInMem.d.mts +2 -2
- package/dist/zalogaDbAccessorInMem.d.mts.map +1 -1
- package/dist/zalogaDbAccessorInMem.mjs +58 -86
- package/dist/zalogaDbAccessorInMem.mjs.map +1 -1
- package/dist/zalogaNaDan.mjs +27 -59
- package/dist/zalogaNaDan.mjs.map +1 -1
- package/dist/zalogaNaDanIzracunana.mjs +36 -48
- package/dist/zalogaNaDanIzracunana.mjs.map +1 -1
- package/dist/zalogaPoDnevih.mjs +34 -36
- package/dist/zalogaPoDnevih.mjs.map +1 -1
- package/dist/zapisiPorabeZaDobavnice.mjs +61 -92
- package/dist/zapisiPorabeZaDobavnice.mjs.map +1 -1
- package/dist/zapisiPorabeZaObravnave.mjs +58 -89
- package/dist/zapisiPorabeZaObravnave.mjs.map +1 -1
- package/dist/zapisiPoraboZaObravnavo.mjs +51 -62
- package/dist/zapisiPoraboZaObravnavo.mjs.map +1 -1
- package/dist/zapisiZalogoPoDnevih.mjs +67 -110
- package/dist/zapisiZalogoPoDnevih.mjs.map +1 -1
- package/dist/zapisiZalogoPoDnevih_old.mjs +86 -140
- package/dist/zapisiZalogoPoDnevih_old.mjs.map +1 -1
- package/dist/zaracunajDobavnice.mjs +155 -193
- package/dist/zaracunajDobavnice.mjs.map +1 -1
- package/dist/zavarovanje.mjs +2 -4
- package/dist/zavarovanje.mjs.map +1 -1
- package/dist/zbrisiZalogoArtiklovKiJeNeMorejoImeti.mjs +17 -30
- package/dist/zbrisiZalogoArtiklovKiJeNeMorejoImeti.mjs.map +1 -1
- package/dist/zdruziOdprteRacune.mjs +34 -61
- package/dist/zdruziOdprteRacune.mjs.map +1 -1
- package/dist/zdruziPaciente.mjs +57 -85
- package/dist/zdruziPaciente.mjs.map +1 -1
- package/dist/zdruziStranke.mjs +143 -193
- package/dist/zdruziStranke.mjs.map +1 -1
- package/package.json +1 -1
- 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,139 @@ 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
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
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
|
+
let inventuraZaNazaj = opts?.ponovnaKnjizbaZgodovineDELNA;
|
10
|
+
if (inventuraZaNazaj)
|
11
|
+
console.log("Inventura za nazaj", blagovnica.opomba || "", blagovnica._id);
|
12
|
+
let artikli_ids = blagovnica.postavke.map(p => p.artikel_id?.toString());
|
13
|
+
let prejsnjeSpremembeZaDokument = await mongo.find("spremembaZaloge", {
|
14
|
+
skladisce_id: blagovnica.skladisce_id,
|
15
|
+
dokument_id: blagovnica._id,
|
16
|
+
artikel_id: { $in: artikli_ids },
|
17
|
+
});
|
18
|
+
let zaloge = await mongo.find("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: { $in: artikli_ids } });
|
19
|
+
let vpisSprememb = [];
|
20
|
+
let datum = inventuraZaNazaj
|
21
|
+
? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
|
22
|
+
: new Date(new Date().valueOf());
|
23
|
+
let datumDokumenta = inventuraZaNazaj
|
24
|
+
? (blagovnica.datumDokumenta && new Date(blagovnica.datumDokumenta)) || new Date(new Date().valueOf())
|
25
|
+
: new Date(blagovnica.datum);
|
26
|
+
for await (let postavka of blagovnica.postavke) {
|
27
|
+
if (["storitev", "potrošni material"].includes(postavka.kategorija))
|
28
|
+
continue;
|
29
|
+
let vecEnakih = blagovnica.postavke.filter(p => p.artikel_id.toString() === postavka.artikel_id.toString()).length > 1;
|
30
|
+
let zeObstajaIz = vecEnakih && !inventuraZaNazaj
|
31
|
+
? false
|
32
|
+
: prejsnjeSpremembeZaDokument.find(s => s.artikel_id.toString() === postavka.artikel_id.toString());
|
33
|
+
if (zeObstajaIz) {
|
34
|
+
console.error("spremeniZalogoZaInventuro: postavka že razknjižena za blagovnico " + blagovnica._id, {
|
35
|
+
artikel_id: postavka.artikel_id,
|
36
|
+
skladisce_id: blagovnica.skladisce_id,
|
37
|
+
dokument_id: blagovnica._id
|
38
|
+
});
|
39
|
+
continue;
|
137
40
|
}
|
138
|
-
|
41
|
+
;
|
42
|
+
let artikel = await poisciArtikel(postavka.artikel_id, mongo, `(${mongo.db || "?tenant"}) ni artikla za inventuro: ${postavka.artikel_id} - ${postavka.naziv}`);
|
43
|
+
if (!artikel)
|
44
|
+
continue;
|
45
|
+
if (!blagovnica.razknjiziCistoVse && !postavka.razknjiNeglede && !lahkoImaZalogo(artikel, privzetaRazknjizaZdravil, privzetaRazknjizaIzdelkov))
|
46
|
+
continue;
|
47
|
+
let z = (zaloge.find(z => z.artikel_id.toString() === artikel._id)
|
48
|
+
|| await mongo.findOne("zaloga", { skladisce_id: blagovnica.skladisce_id, artikel_id: artikel._id }));
|
49
|
+
let zaloga = z || { _id: new ObjectID().toHexString(), artikel_id: artikel._id, skladisce_id: blagovnica.skladisce_id, zaloga: 0, nbc: 0, vrednost: 0 };
|
139
50
|
if (inventuraZaNazaj) {
|
140
|
-
|
141
|
-
|
51
|
+
zaloga.nbc = postavka.nbc || 0;
|
52
|
+
zaloga.zaloga = postavka.kolicinaPrej || 0;
|
53
|
+
zaloga.vrednost = zaloga.zaloga * zaloga.nbc;
|
142
54
|
}
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
55
|
+
// sprememba 21.10.2024 za SVP, knjiženje za nazaj
|
56
|
+
let stara_nbc = opts?.pustiNbcInventure && opts?.ponovnaKnjizbaZgodovineDELNA
|
57
|
+
? postavka.nbc
|
58
|
+
: (artikel.nbc || 0);
|
59
|
+
postavka.nbc = stara_nbc;
|
60
|
+
let stara_nbc_na_enoto_zaloge = stara_nbc / (postavka.enotaFaktor || 1);
|
61
|
+
if (postavka.popisanaKolicina === undefined) {
|
62
|
+
console.error(`popisanaKolicina manjka na inventuri ${blagovnica._id} za artikel ${artikel._id}`);
|
63
|
+
continue;
|
64
|
+
}
|
65
|
+
let sprememba = preracunajInventuro({
|
66
|
+
vrstaSpremembe: 0 /* VrstaSpremembeZaloge.NASTAVI */,
|
67
|
+
zaloga,
|
68
|
+
kolicina: postavka.popisanaKolicina * (postavka.enotaFaktor || 1),
|
69
|
+
stara_nbc: stara_nbc_na_enoto_zaloge,
|
70
|
+
});
|
71
|
+
zaloga = vpisiSprememboZaloge(zaloga, sprememba);
|
72
|
+
await mongo.upsert("zaloga", { artikel_id: artikel._id, skladisce_id: zaloga.skladisce_id }, {
|
73
|
+
nbc: stara_nbc_na_enoto_zaloge,
|
74
|
+
zaloga: sprememba.zaloga.nova,
|
75
|
+
vrednost: sprememba.vrednostZaloge.nova,
|
76
|
+
});
|
77
|
+
postavka.kolicina = sprememba.zaloga.sprememba / (postavka.enotaFaktor || 1);
|
78
|
+
preracunajPostavkoBlagovniceRazenDobave(postavka);
|
79
|
+
// if (Math.abs(postavka.tnbc - sprememba.vrednostZaloge.sprememba) > .1)
|
80
|
+
// console.log("spremeniZalogoZaInventuro: postavka.tnbc - sprememba.vrednostZaloge.sprememba,",postavka.tnbc, sprememba.vrednostZaloge.sprememba)
|
81
|
+
// if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
|
82
|
+
// console.log("račun spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
|
83
|
+
vpisSprememb.push(mongo.insert("spremembaZaloge", {
|
84
|
+
_id: new ObjectID().toHexString(),
|
85
|
+
datum: datum,
|
86
|
+
...razpisiDatum(datum),
|
87
|
+
datumDokumenta,
|
88
|
+
artikel_id: artikel._id,
|
89
|
+
skladisce_id: zaloga.skladisce_id,
|
90
|
+
dokument_id: blagovnica._id,
|
91
|
+
vrstaSpremembe: sprememba.vrstaSpremembe,
|
92
|
+
vrstaDogodka: blagovnica.vrsta,
|
93
|
+
kategorija: artikel.kategorija,
|
94
|
+
//partner_id: blagovnica.?._id,
|
95
|
+
zaloga: sprememba.zaloga,
|
96
|
+
vrednostZaloge: sprememba.vrednostZaloge,
|
97
|
+
nbc: { stara: stara_nbc, nova: stara_nbc, sprememba: 0 },
|
98
|
+
dst: artikel.dstIn || artikel.dst,
|
99
|
+
}));
|
100
|
+
// if ((Math.abs(round2(zaloga.vrednost - sprememba.vrednostZaloge.nova))) > .2)
|
101
|
+
// console.log("inventura razlika zaloge", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
|
102
|
+
// if (Math.abs(round2(sprememba.vrednostZaloge.stara + sprememba.vrednostZaloge.sprememba - sprememba.vrednostZaloge.nova)) > .2)
|
103
|
+
// console.log("inv spr", artikel._id, (artikel as any).naziv, zaloga.vrednost, "-", sprememba.vrednostZaloge.nova, "=", zaloga.vrednost - sprememba.vrednostZaloge.nova)
|
104
|
+
if (spremljamoSerijske) {
|
105
|
+
let spec = {
|
106
|
+
artikel_id: postavka.artikel_id,
|
107
|
+
skladisce_id: blagovnica.skladisce_id,
|
108
|
+
vir: "inventura",
|
109
|
+
uporabnik: blagovnica.izvedel,
|
110
|
+
dokument_id: blagovnica._id,
|
111
|
+
};
|
112
|
+
await odstraniSerijskeStevilkeZaArtikel({
|
113
|
+
...spec,
|
114
|
+
ostane: postavka.stevilkeZdravil?.length ? 0 : postavka.popisanaKolicina
|
115
|
+
}, mongo);
|
116
|
+
if (!!postavka.stevilkeZdravil?.length) {
|
117
|
+
let dodane = await dodajSerijskeStevilke({
|
118
|
+
...spec,
|
119
|
+
serijske: postavka.stevilkeZdravil,
|
120
|
+
stevilo: postavka.popisanaKolicina,
|
121
|
+
}, mongo);
|
122
|
+
postavka.vtipkaneStevilkeZdravil = postavka.stevilkeZdravil;
|
123
|
+
postavka.stevilkeZdravil = strniSerijske(dodane.map(a => a.serijska));
|
124
|
+
}
|
125
|
+
}
|
126
|
+
await mongo.upsert("artikli", { _id: artikel._id, }, { zadnjaInventura: blagovnica.datum });
|
127
|
+
}
|
128
|
+
let sprememba = {
|
129
|
+
postavke: blagovnica.postavke,
|
130
|
+
razknjizena: new Date(),
|
131
|
+
...izracunajSestevkeBlagovniceRazenDobave(blagovnica.postavke),
|
132
|
+
...razpisiDatum(blagovnica.datum),
|
133
|
+
x: 1,
|
134
|
+
};
|
135
|
+
if (inventuraZaNazaj) {
|
136
|
+
sprememba.datum = datum;
|
137
|
+
sprememba.datumDokumenta = datumDokumenta;
|
138
|
+
}
|
139
|
+
await Promise.all(vpisSprememb);
|
140
|
+
await mongo.upsert("blagovnice", { _id: blagovnica._id }, sprememba);
|
141
|
+
return false;
|
147
142
|
}
|
148
143
|
//# sourceMappingURL=spremeniZalogoZaInventuro.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"spremeniZalogoZaInventuro.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaInventuro.mts"],"names":[],"mappings":"
|
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
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
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
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
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
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
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
|
-
|
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":"
|
1
|
+
{"version":3,"file":"spremeniZalogoZaPrenos.mjs","sourceRoot":"","sources":["../src/spremeniZalogoZaPrenos.mts"],"names":[],"mappings":"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"}
|