import AConnector from 'pipes-nodejs-sdk/dist/lib/Connector/AConnector'; import ProcessDto from 'pipes-nodejs-sdk/dist/lib/Utils/ProcessDto'; import HttpMethods from 'pipes-nodejs-sdk/dist/lib/Transport/HttpMethods'; import MoneyS5Application from '../MoneyS5Application'; const MONEYS5_CREATE_ORDER_ENDPOINT = 'v2.0/ReceivedOrder'; export default class MoneyS5CreateOrder extends AConnector { public getName = (): string => 'moneys5-create-order'; public async processAction(_dto: ProcessDto): Promise { const dto = _dto; const app = this._application as MoneyS5Application; const { userName, order, } = dto.jsonData as IInputJson; dto.jsonData = { order, }; await this._doRequest(app, userName, MONEYS5_CREATE_ORDER_ENDPOINT, dto); return dto; } private async _doRequest( app: MoneyS5Application, userName: string, url: string, dto: ProcessDto, ): Promise { const appInstall = await this._getApplicationInstall(userName); const requestDto = await app.getRequestDto(dto, appInstall, HttpMethods.GET, url); await this._sender.send(requestDto, [200, 404]); } } interface IInputJson { userName: string; order: [{ /* eslint-disable @typescript-eslint/naming-convention */ 'requestPropertiesList': [ string ], 'isNew': true, 'hidden': true, 'id': string, 'parent_ID': string, 'root_ID': string, 'group_ID': string, 'deleted': true, 'locked': true, 'create_ID': string, 'create_Date': string, 'modify_ID': string, 'modify_Date': string, 'adresaMisto': string, 'adresaNazev': string, 'adresaPSC': string, 'adresaStat': string, 'adresaUlice': string, 'celkovaCastka': number, 'celkovaCastkaCM': number, 'cinnost_ID': string, 'ciselnaRada_ID': string, 'cisloDokladu': string, 'cisloRady': number, 'datumVyrizeni': string, 'datumVystaveni': string, 'dic': string, 'dodaciAdresaFirma_ID': string, 'dodaciAdresaMisto': string, 'dodaciAdresaNazev': string, 'dodaciAdresaPSC': string, 'dodaciAdresaStat': string, 'dodaciAdresaUlice': string, 'domaciMena_ID': string, 'dphnumberCelkem': number, 'dphnumberCelkemCM': number, 'dphnumberDan': number, 'dphnumberDanCM': number, 'dphnumberSazba': number, 'dphnumberZaklad': number, 'dphnumberZakladCM': number, 'dph1Celkem': number, 'dph1CelkemCM': number, 'dph1Dan': number, 'dph1DanCM': number, 'dph1Sazba': number, 'dph1Zaklad': number, 'dph1ZakladCM': number, 'dph2Celkem': number, 'dph2CelkemCM': number, 'dph2Dan': number, 'dph2DanCM': number, 'dph2Sazba': number, 'dph2Zaklad': number, 'dph2ZakladCM': number, 'druhDokladu_ID': string, 'fakturacniAdresaFirma_ID': string, 'fakturacniAdresaMisto': string, 'fakturacniAdresaNazev': string, 'fakturacniAdresaPSC': string, 'fakturacniAdresaStat': string, 'fakturacniAdresaUlice': string, 'faze': number, 'firma_ID': string, 'ic': string, 'jmeno': string, 'konecnyPrijemce_ID': string, 'korekcenumberCelkem': number, 'korekcenumberCelkemCM': number, 'korekcenumberDan': number, 'korekcenumberDanCM': number, 'korekcenumberSazba': number, 'korekcenumberZaklad': number, 'korekcenumberZakladCM': number, 'korekce1Celkem': number, 'korekce1CelkemCM': number, 'korekce1Dan': number, 'korekce1DanCM': number, 'korekce1Sazba': number, 'korekce1Zaklad': number, 'korekce1ZakladCM': number, 'korekce2Celkem': number, 'korekce2CelkemCM': number, 'korekce2Dan': number, 'korekce2DanCM': number, 'korekce2Sazba': number, 'korekce2Zaklad': number, 'korekce2ZakladCM': number, 'kurzMnozstvi': number, 'mena_ID': string, 'nazev': string, 'odkaz': string, 'osoba_ID': string, 'pevneCeny': true, 'platnostDo': string, 'platnostOd': string, 'pocetPolozek': number, 'poznamka': string, 'prijemceFaktury_ID': string, 'registraceDPH_ID': string, 'sazbaDPHnumber_ID': string, 'sazbaDPH1_ID': string, 'sazbaDPH2_ID': string, 'schvaleno': true, 'sleva': number, 'stat_ID': string, 'stav': number, 'storno': number, 'stredisko_ID': string, 'sumaCelkem': number, 'sumaCelkemCM': number, 'sumaDan': number, 'sumaDanCM': number, 'sumaZaklad': number, 'sumaZakladCM': number, 'systemovy': true, 'typDokladu': number, 'ucetniKurzKurz': number, 'vyrizeno': number, 'vystavil': string, 'zakazka_ID': string, 'zapornyPohyb': true, 'zauctovano': true, 'zaverkovy': true, 'zpusobDopravy_ID': string, 'zpusobPlatby_ID': string, 'dodaciPodminky_ID': string, 'idDatum': string, 'idDopravaTuzemsko': number, 'idDopravaZahranici': number, 'idOvlivnujeIntrastat': true, 'idPovahaTransakce_ID': string, 'povahaTransakce_ID': string, 'statUrceniOdeslani_ID': string, 'zvlastniPohyb_ID': string, 'priznakVyrizeno': true, 'mojeFirma_ID': string, 'mojeFirmaBankovniSpojeni_ID': string, 'mojeFirmaBankovniSpojeniCisloUctu': string, 'mojeFirmaBankovniSpojeniIBAN': string, 'mojeFirmaBankovniSpojeniKodBanky': string, 'mojeFirmaBankovniSpojeniSpecifickySymbol': string, 'mojeFirmaDIC': string, 'mojeFirmaIC': string, 'mojeFirmaKontaktniOsoba_ID': string, 'mojeFirmaKontaktniOsobaJmeno': string, 'mojeFirmaKontaktniOsobaNazev': string, 'mojeFirmaKontaktniOsobaPrijmeni': string, 'mojeFirmaMisto': string, 'mojeFirmaNazev': string, 'mojeFirmaPSC': string, 'mojeFirmaStat': string, 'mojeFirmaUlice': string, 'mojeFirmaBanka_ID': string, 'adresaKontaktniOsoba_ID': string, 'adresaKontaktniOsobaJmeno': string, 'adresaKontaktniOsobaNazev': string, 'adresaKontaktniOsobaPrijmeni': string, 'adresaKoncovehoPrijemceKontaktniOsoba_ID': string, 'adresaKoncovehoPrijemceKontaktniOsobaNazev': string, 'adresaPrijemceFakturyKontaktniOsoba_ID': string, 'adresaPrijemceFakturyKontaktniOsobaNazev': string, 'druhDopravy_ID': string, 'mojeFirmaBankovniSpojeniSWIFT': string, 'mojeFirmaKontaktyEmail': string, 'mojeFirmaKontaktyTelefon1': string, 'mojeFirmaKontaktyTelefon2': string, 'mojeFirmaKontaktyTelefon3': string, 'mojeFirmaKontaktyWWW': string, 'statPuvodu_ID': string, 'zaokrouhleniCelkovaCastka_ID': string, 'zaokrouhleniDPH_ID': string, 'zaokrouhleniDruhSazbyDPH': number, 'zaokrouhleniPrevazujiciSazbaDPH': true, 'mojeFirmaFirma_ID': string, 'idKrajPuvodu_ID': string, 'textPredCenami': string, 'textZaCenami': string, 'iDopravniNaklady': number, 'iRozpousteniNakladu': number, 'icdph': string, 'mojeFirmaICDPH': string, 'attachments': true, 'adresaKoncovehoPrijemceEmail': string, 'adresaKoncovehoPrijemceEmailSpojeni_ID': string, 'adresaKoncovehoPrijemceTelefon': string, 'adresaKoncovehoPrijemceTelefonSpojeni_ID': string, 'procentniZisk': number, 'ziskZaDoklad': number, 'adresaKoncovehoPrijemceStat_ID': string, 'adresaPrijemceFakturyStat_ID': string, 'adresaStat_ID': string, 'mojeFirmaStat_ID': string, 'variabilniSymbol': string, 'zaokrouhleniSazbaDPH_ID': string, 'obchodnik_ID': string, 'celkovaCastkaDual': number, 'polozky': [ { 'requestPropertiesList': [ string ], 'isNew': true, 'hidden': true, 'id': string, 'parent_ID': string, 'root_ID': string, 'group_ID': string, 'deleted': true, 'locked': true, 'create_ID': string, 'create_Date': string, 'modify_ID': string, 'modify_Date': string, 'attachments': true, 'celkovaCena': number, 'celkovaCenaCM': number, 'cinnost_ID': string, 'cisloPolozky': number, 'dokladObjectName': string, 'dphCelkem': number, 'dphCelkemCM': number, 'dphDan': number, 'dphDanCM': number, 'dphSazba': number, 'dphZaklad': number, 'dphZakladCM': number, 'druhPolozky_ID': string, 'druhSazbyDPH': string, 'formatPolozky': string, 'jednCena': number, 'jednCenaCM': number, 'jednotka': string, 'mnozstvi': number, 'nazev': string, 'parentObject_ID': string, 'poradi': number, 'poznamka': string, 'sazbaDPH_ID': string, 'stredisko_ID': string, 'typCeny': string, 'typPolozky': string, 'vyrizeno': number, 'zakazka_ID': string, 'zbyva': number, 'celkovaCenaBezSlevy': number, 'celkovaCenaBezSlevyCM': number, 'katalog': string, 'mnozstviVyrizeno': number, 'mnozstviZbyva': number, 'obsahPolozky_ID': string, 'sleva': number, 'typObsahu': string, 'zarukaTypZaruky': string, 'zarukaZarucniDoba': number, 'ipHmotnost': number, 'ipMnozstvi': number, 'ipOvlivnujeIntrastat': true, 'povahaTransakce_ID': string, 'statUrceniOdeslani_ID': string, 'zvlastniPohyb_ID': string, 'nepodlehatSleveDokladu': true, 'priznakVyrizeno': true, 'dphEditovanoRucne': true, 'vratka': true, 'jednotkovaCenaBezSlevyCM': number, 'jednotkovaCenaBezSlevy': number, 'zdrojovaPolozkaKopirovani_ID': string, 'dodaciPodminky_ID': string, 'druhDopravy_ID': string, 'kombinovanaNomenklatura_ID': string, 'statistickyZnak_ID': string, 'statPuvodu_ID': string, 'krajPuvodu_ID': string, 'mnozstviKPreobjednani': number, 'mnozstviKVyrizeni': number, 'iDopravniNaklady': number, 'istatNeslucovat': true, 'autoRow_ID': number, 'ipCisloZasilky': string, 'platnaDo': string, 'platnaOd': string, 'schvaleno': true, 'jednotkovaHmotnost': number, 'celkovaHmotnost': number, 'vychoziJednotkovaCena': number, 'vychoziCelkovaCena': number, 'zmenaCeny': number, 'prepocitatHmotnostZPodrizenych': true, 'dphSazbaZvlastniRezim': number, 'druhSazbyDPHZvlastniRezim': string, 'sazbaDPHZvlastniRezim_ID': string, 'zvlastniRezimDPH': string, 'obchodnik_ID': string, 'generateSubItems': true, 'obsahPolozky': { 'requestPropertiesList': [ string ], 'artikl_ID': string, 'sklad_ID': string, 'jednotka_ID': string, 'cenik_ID': string, 'cenovaHladina_ID': string, 'mnozstvi': number, 'pocetJednotek': number, 'pocetZakladnichJednotek': number, 'vyberDodavek': true, 'zasoba_ID': string, 'vazbaPocetPodrizene': number, 'vazbaPocetNadrizene': number, 'vazbaZobrazovatNaVystupu': true, 'vazbaTypVazby': string, 'pocitatCenuZKomponent': true, 'skladovaPozice_ID': string, 'druhPolozky_ID': string, 'jednotkaZdroj_ID': string, 'vazbaPricitatCenu': true, 'typArtiklu': string, 'druhPrislusenstvi_ID': string, 'druhPolozky2_ID': string, 'podrizenePrebiratSklad': true, 'minuleMnozstviRezervace': number, 'objednano': number, 'rezervovano': number, 'ovlivnujeObaloveKonto': true, 'beznaCena': number, 'typBezneCeny': string, 'odchyleniCeny': number, 'vlastniDruhSazbyDphBezneCeny': true, 'druhSazbyDphBezneCeny': string, 'cenikBezneCeny_ID': string, 'artiklJednotkaBeznaCena_ID': string, 'attachments': true, 'autoRow_ID': number, 'partnerskyKod': string, 'partnerskyNazev': string, 'vazbaIgnorovatPomer': true, 'vyberDodavekPrebranim': true } } ] /* eslint-enable @typescript-eslint/naming-convention */ }]; }