Files
HDCApi/_custom/Rootvin/uCtrlCustom.pas
T
2025-05-21 21:14:32 +02:00

1089 lines
35 KiB
ObjectPascal

unit uCtrlCustom;
interface
uses
MVCframework,
MVCframework.Commons,
MVCframework.Serializer.Commons,
// MVCframework.Serializer.Intf,
System.Generics.Collections, // kvuli TDictionary
System.RegularExpressions,
// JsonDataObjects,
uCommons, // kvuli EServiceException
uCtrlBase,
// uSvc_Base,
helTabsBIDs,
uHeoObj_Base,
uHeOObj_Custom,
uSvcCustom,
MVCFramework.Swagger.Commons; // kvuli dokumentaci
const
{$I .\..\..\globalConsts.inc}
type
[MVCPath('/rootvin')]
TRTNController = class(TBaseController)
strict private
FSelfSvc: TRTNService;
strict protected
function GetRTNService: TRTNService;
public
destructor Destroy; override;
// [MVCDoc('Pomoci POST zapise obecna json data do Heliosu')]
[MVCPath('/zapisjson')] // zapis obecnych json data do Heliosu
[MVCHTTPMethod([httpPOST])]
[MVCSwagSummary('Rootvin', 'Zapis JSON dat do db Heliosu', 'RTNZapisJSONDoHeliosu')]
[MVCConsumes(TMVCMediaType.APPLICATION_JSON)]
procedure ZapisJSONDoHeliosu (CTX: TWebContext);
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/nactijson')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Nacteni data ve formatu JSON z Heliosu (dle pøedaného požadavku)', 'RTNNactiJsonData')]
function NactiJSONDataZHeliosu (CTX: TWebContext): string;
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/prikazymichani')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrati ID prikazu pro micharnu', 'RTNGetPrikazyProMicharnu')]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje pro které je tìsto mícháno', ptString, false)]
[MVCSwagParam(plQuery, 'idpracoviste', 'ID pracovištì, filtr na pøíkazy, v jejichž operacích je dané pracovištì›', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'spustene', '1=jen spustene, tj. ty, co maji svou operaci v neukoncene evidenci operaci', ptString, false)]
procedure GetPrikazyProMicharnu ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('idpracoviste', '')] sIdPracoviste: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string='';
[MVCFromQueryString('spustene', '0')] spustene: string=''
);
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/prikazyewb')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrati ID prikazu pro stroj EWB', 'RTNGetPrikazyProEWB')]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje', ptString, false)]
[MVCSwagParam(plQuery, 'idpracoviste', 'ID pracovištì, filtr na pøíkazy, v jejichž operacích je dané pracovištì›', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'spustene', '1=jen spustene, tj. ty, co maji svou operaci v neukoncene evidenci operaci', ptString, false)]
[MVCSwagParam(plQuery, 'material', '0=bez materialu (default) / 1=vcetne materialu pro operace maceni', ptString, false)]
procedure GetPrikazyProEWB ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('idpracoviste', '')] sIdPracoviste: string='';
[MVCFromQueryString('material', '0')] material: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string='';
[MVCFromQueryString('spustene', '0')] spustene: string=''
);
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/prikazymaceni')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrátí ID pøíkazù pro máèírnu', 'RTNGetPrikazyProMacirnu')]
// [MVCSwagParam(plQuery, 'typprikazu', 'Typy pøíkazu (2=máÄírna)', ptString, false)]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje pro které je tìsto mícháno', ptString, false)]
[MVCSwagParam(plQuery, 'idpracoviste', 'ID pracovištì, filtr na pøíkazy, v jejichž operacích je dané pracovištì›', ptString, false)]
[MVCSwagParam(plQuery, 'operace', '0=bez operaci (default) / 1=vcetne operaci', ptString, false)]
[MVCSwagParam(plQuery, 'material', '0=bez materialu (default) / 1=vcetne materialu pro operace maceni', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'spustene', '1=jen spustene, tj. ty, co maji svou operaci v neukoncene evidenci operaci', ptString, false)]
procedure GetPrikazyProMacirnu ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('idpracoviste', '')] sIdPracoviste: string='';
[MVCFromQueryString('operace', '0')] operace: string='';
[MVCFromQueryString('material', '0')] material: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string='';
[MVCFromQueryString('spustene', '0')] spustene: string=''
);
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/prikazybaleni')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrátí ID pøíkazù pro balení', 'RTNGetPrikazyProBaleni')]
[MVCSwagParam(plQuery, 'typprikazu', 'Typy pøíkazu (3=balení)', ptString, false)]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje', ptString, false)]
[MVCSwagParam(plQuery, 'operace', '0=bez operaci (default) / 1=vcetne operaci', ptString, false)]
[MVCSwagParam(plQuery, 'material', '0=bez materialu (default) / 1=vcetne materialu pro operace baleni', ptString, false)]
[MVCSwagParam(plQuery, 'idpracoviste', 'ID pracovištì filtr na pøíkazy, v jejichž operacích je dané pracovištì›', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'spustene', '1=jen spustene, tj. ty, co maji svou operaci v neukoncene evidenci operaci', ptString, false)]
procedure GetPrikazyProBaleni ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('idpracoviste', '')] sIdPracoviste: string='';
[MVCFromQueryString('operace', '0')] operace: string='';
[MVCFromQueryString('material', '0')] material: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string='';
[MVCFromQueryString('spustene', '0')] spustene: string=''
);
[MVCPath('/prikazybalicka')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrátí ID pøíkazù pro balièku BAL-xx', 'RTNGetPrikazyProBalicku')]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje', ptString, false)]
[MVCSwagParam(plQuery, 'operace', '0=bez operaci (default) / 1=vcetne operaci', ptString, false)]
[MVCSwagParam(plQuery, 'material', '0=bez materialu (default) / 1=vcetne materialu pro operace baleni', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'spustene', '1=jen spustene, tj. ty, co maji svou operaci v neukoncene evidenci operaci', ptString, false)]
procedure GetPrikazyProBalicku ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('operace', '0')] operace: string='';
[MVCFromQueryString('material', '0')] material: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string='';
[MVCFromQueryString('spustene', '0')] spustene: string=''
);
// [MVCDoc('Pomoci GET vraci json data z Heliosu')]
[MVCPath('/prikazy')] // vrati JSON data podle pozadovaneho typu (json req)
[MVCHTTPMethod([httpGET])]
[MVCProduces(TMVCMediaType.APPLICATION_JSON)]
[MVCSwagSummary('Rootvin', 'Vrátí ID pøíkazù podle druhu', 'RTNGetPrikazyProMacirnu')]
[MVCSwagParam(plQuery, 'typprikazu', 'Typy pøíkazu (0=obecné / 1=míchárna / 2=máèírna)', ptString, false)]
[MVCSwagParam(plQuery, 'idstroj', 'ID stroje', ptString, false)]
[MVCSwagParam(plQuery, 'idpracoviste', 'ID pracovištì, filtr na pøíkazy, v jejichž operacích je dané pracovištì›', ptString, false)]
[MVCSwagParam(plQuery, 'datumod', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'datumdo', 'Datum do ve formátu RRRRMMDD', ptString, false)]
procedure GetPrikazy ([MVCFromQueryString('idstroj', '')] sIdStroj: string='';
[MVCFromQueryString('idpracoviste', '')] sIdPracoviste: string='';
[MVCFromQueryString('typprikazu', '0')] sTypPrikazu: string='';
[MVCFromQueryString('datumod', '')] odDatum: string='';
[MVCFromQueryString('datumdo', '')] doDatum: string=''
);
end;
[MVCPath('/sdserver/doklad')]
TGatemaSDDokladController = class(TBaseController)
strict private
FSelfSvc: TGatemaSDDokladService;
strict protected
function GetGatemaSDDokladService: TGatemaSDDokladService;
public
destructor Destroy; override;
[MVCPath]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad', 'Vrací hlaviÄku dokladů SD Serveru', 'GatemaSDDokladyGetAll')]
[MVCSwagParam(plQuery, 'od', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'seznam', '1=jen seznam se základními údaji', ptString, false)]
procedure GetAll ([MVCFromQueryString('od', '')] odDatum: string='';
[MVCFromQueryString('seznam', '')] jenSeznam: string='0'
);
[MVCPath('/meta')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad', 'Vrací metadata dokladu SD Serveru', 'GatemaSDDokladyGetMeta')]
procedure GetMeta;
[MVCPath('/($id)')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad', 'Vrací data dokladu SD Serveru', 'GatemaSDDokladyGetByID')]
[MVCSwagParam(plPath, 'id', 'ID dokladu', ptString, false)]
[MVCSwagParam(plQuery, 'typdokl', 'Typ dokladu', ptString, false)]
[MVCSwagParam(plQuery, 'druhpohybu', 'Druh pohybu', ptString, false)]
[MVCSwagParam(plQuery, 'sklad', 'Sklad', ptString, false)]
[MVCSwagParam(plQuery, 'format', 'Formát (1=dokladOZ)', ptString, false)]
[MVCSwagParam(plQuery, 'od', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'do', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'seznam', '1=jen seznam se základními údaji', ptString, false)]
[MVCSwagResponses(200, 'Success', TGatemaSDDoklad, true)]
procedure GetByID(id: string='';
[MVCFromQueryString('typdokl', '')] typDokl: string='';
[MVCFromQueryString('druhpohybu', '')] druhPohybu: string='';
[MVCFromQueryString('sklad', '')] sklad: string='';
[MVCFromQueryString('format', '')] formatX: string='';
[MVCFromQueryString('od', '')] odDatum: string='';
[MVCFromQueryString('do', '')] doDatum: string='';
[MVCFromQueryString('seznam', '')] jenSeznam: string='0'
);
end;
[MVCPath('/sdserver/dokladoz')]
TGatemaSDDokladOZController = class(TBaseController)
strict private
FSelfSvc: TSDGDokladOZService;
strict protected
function GetSDGDokladOZService: TSDGDokladOZService;
public
destructor Destroy; override;
[MVCPath]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad OZ', 'Vrací hlavièku dokladù OZ s vazbou na SD Server', 'GatemaSDDokladyOZGetAll')]
[MVCSwagParam(plQuery, 'od', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'seznam', '1=jen seznam se základními údaji', ptString, false)]
procedure GetAll([MVCFromQueryString('od', '')] odDatum: string='';
[MVCFromQueryString('seznam', '')] jenSeznam: string='0'
);
[MVCPath('/meta')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad OZ', 'Vrací metadata', 'GatemaSDDokladyOZGetMeta')]
procedure GetMeta;
[MVCPath('/($id)')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD doklad OZ', 'Vrací data dokladu OZ s vazbou na SD Server', 'GatemaSDDokladyOZGetByID')]
[MVCSwagParam(plPath, 'id', 'ID dokladu', ptString, false)]
[MVCSwagParam(plQuery, 'typdokl', 'Typ dokladu', ptString, false)]
[MVCSwagParam(plQuery, 'druhpohybu', 'Druh pohybu', ptString, false)]
[MVCSwagParam(plQuery, 'sklad', 'Sklad', ptString, false)]
[MVCSwagParam(plQuery, 'format', 'Formát (1=dokladOZ)', ptString, false)]
[MVCSwagParam(plQuery, 'od', 'Datum od ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'do', 'Datum do ve formátu RRRRMMDD', ptString, false)]
[MVCSwagParam(plQuery, 'seznam', '1=jen seznam se základními údaji', ptString, false)]
[MVCSwagResponses(200, 'Success', TGatemaSDDoklad, true)]
procedure GetByID (id: string='';
[MVCFromQueryString('typdokl', '')] typDokl: string='';
[MVCFromQueryString('druhpohybu', '')] druhPohybu: string='';
[MVCFromQueryString('sklad', '')] sklad: string='';
[MVCFromQueryString('format', '')] formatX: string='';
[MVCFromQueryString('od', '')] odDatum: string='';
[MVCFromQueryString('do', '')] doDatum: string='';
[MVCFromQueryString('seznam', '')] jenSeznam: string='0'
);
end;
[MVCPath('/sdserver/scandata')]
TGatemaSDScanDataController = class(TBaseController)
strict private
FSelfSvc: TGatemaSDScanDataService;
strict protected
function GetGatemaSDScanDataService: TGatemaSDScanDataService;
public
destructor Destroy; override;
[MVCPath('/meta')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD ScanData', 'Vrací metadata', 'GatemaSDScanDataGetMeta')]
procedure GetMeta;
[MVCPath('/($id)')]
[MVCHTTPMethod([httpGET])]
[MVCSwagSummary('GatemaSD ScanData', 'Vrací naskenovaná data', 'GatemaSDScanDataGetByID')]
[MVCSwagParam(plPath, 'id', 'ID scan data', ptString, false)]
[MVCSwagParam(plQuery, 'iddoklad', 'ID dokladu SD', ptString, false)]
[MVCSwagResponses(200, 'Success', TGatemaSDScanData, true)]
procedure GetByID(id: string='';
[MVCFromQueryString('iddoklad', '')] iddoklad: string=''
);
end;
implementation
uses
FireDAC.Stan.Option,
FireDAC.Comp.Client,
FireDAC.Stan.Param,
MVCFramework.FireDAC.Utils,
MVCFramework.DataSet.Utils,
System.StrUtils,
System.SysUtils,
System.JSON,
JsonDataObjects,
Winapi.ActiveX,
uDataMod,
Quick.Logger;
const
selSloupce = '';
{ TGatemaSDDokladOZController }
destructor TGatemaSDDokladOZController.Destroy;
begin
FSelfSvc.Free;
inherited;
end;
function TGatemaSDDokladOZController.GetSDGDokladOZService: TSDGDokladOZService;
begin
inherited;
if not Assigned(FSelfSvc) then
FSelfSvc:= TSDGDokladOZService.Create(datMod);
result:= FSelfSvc;
end;
procedure TGatemaSDDokladOZController.GetAll (odDatum: string=''; jenSeznam: string='0');
var params: TDictionary<string, string>;
begin
params:= TDictionary<string, string>.Create;
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
jenSeznam:= sanitizeSQLString(jenSeznam);
if (jenSeznam='1') then
params.Add('seznam', '1');
try
try
Render(ObjectDict().Add('data', GetSDGDokladOZService.GetByParams(params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
finally
params.Free;
end;
end;
procedure TGatemaSDDokladOZController.GetByID (id: string=''; typDokl: string=''; druhPohybu: string=''; sklad: string=''; formatX: string=''; odDatum: string=''; doDatum: string='';
jenSeznam: string='0');
var iId: integer;
params: TDictionary<string, string>;
begin
params:= TDictionary<string, string>.Create;
iId:= 0;
id:= sanitizeSQLString(id);
if (id<>'') then
if not(TryStrToInt(id, iId)) then
iId:= 0;
if (iId>0) then
params.Add('id', iId.ToString);
typDokl:= sanitizeSQLString(sklad);
if (typDokl<>'') then
params.Add('typDokladu', typDokl);
druhPohybu:= sanitizeSQLString(sklad);
if (druhPohybu<>'') then
params.Add('druhPohybu', druhPohybu);
formatX:= sanitizeSQLString(formatX); // pro zobrazeni jako DokladOZ
if (formatX<>'') then
if (formatX='1') then
params.Add('format', formatX);
sklad:= sanitizeSQLString(sklad);
if (sklad<>'') then
params.Add('sklad', sklad);
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
jenSeznam:= sanitizeSQLString(jenSeznam);
if (jenSeznam='1') then
params.Add('seznam', '1');
try
try
Render(ObjectDict().Add('data', GetSDGDokladOZService.GetByParams(params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
finally
params.Free;
end;
end;
procedure TGatemaSDDokladOZController.GetMeta;
begin
try
Render(ObjectDict().Add('data', GetSDGDokladOZService.GetMeta));
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
{ TGatemaSDDokladController }
destructor TGatemaSDDokladController.Destroy;
begin
FSelfSvc.Free;
inherited;
end;
function TGatemaSDDokladController.GetGatemaSDDokladService: TGatemaSDDokladService;
begin
inherited;
if not Assigned(FSelfSvc) then
FSelfSvc:= TGatemaSDDokladService.Create(datMod);
result:= FSelfSvc;
end;
procedure TGatemaSDDokladController.GetAll (odDatum: string=''; jenSeznam: string='0');
var params: TDictionary<string, string>;
begin
params:= TDictionary<string, string>.Create;
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
jenSeznam:= sanitizeSQLString(jenSeznam);
if (jenSeznam='1') then
params.Add('seznam', '1');
try
try
Render(ObjectDict().Add('data', GetGatemaSDDokladService.GetByParams(params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
finally
params.Free;
end;
end;
procedure TGatemaSDDokladController.GetByID (id: string=''; typDokl: string=''; druhPohybu: string=''; sklad: string=''; formatX: string=''; odDatum: string=''; doDatum: string='';
jenSeznam: string='0');
var iId: integer;
params: TDictionary<string, string>;
begin
params:= TDictionary<string, string>.Create;
iId:= 0;
id:= sanitizeSQLString(id);
if (id<>'') then
if not(TryStrToInt(id, iId)) then
iId:= 0;
if (iId>0) then
params.Add('id', iId.ToString);
typDokl:= sanitizeSQLString(sklad);
if (typDokl<>'') then
params.Add('typDokladu', typDokl);
druhPohybu:= sanitizeSQLString(sklad);
if (druhPohybu<>'') then
params.Add('druhPohybu', druhPohybu);
formatX:= sanitizeSQLString(formatX); // pro zobrazeni jako DokladOZ
if (formatX<>'') then
if (formatX='1') then
params.Add('format', formatX);
sklad:= sanitizeSQLString(sklad);
if (sklad<>'') then
params.Add('sklad', sklad);
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
jenSeznam:= sanitizeSQLString(jenSeznam);
if (jenSeznam='1') then
params.Add('seznam', '1');
try
try
Render(ObjectDict().Add('data', GetGatemaSDDokladService.GetByParams(params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
finally
params.Free;
end;
end;
procedure TGatemaSDDokladController.GetMeta;
begin
try
Render(ObjectDict().Add('data', GetGatemaSDDokladService.GetMeta));
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
{ TGatemaSDScanDataController }
destructor TGatemaSDScanDataController.Destroy;
begin
FSelfSvc.Free;
end;
function TGatemaSDScanDataController.GetGatemaSDScanDataService: TGatemaSDScanDataService;
begin
inherited Create;
if not Assigned(FSelfSvc) then
FSelfSvc:= TGatemaSDScanDataService.Create(datMod);
result:= FSelfSvc;
end;
procedure TGatemaSDScanDataController.GetByID (id: string=''; iddoklad: string='');
var iId: integer;
params: TDictionary<string, string>;
begin
params:= TDictionary<string, string>.Create;
iId:= 0;
id:= sanitizeSQLString(id);
if (id<>'') then
if not(TryStrToInt(id, iId)) then
iId:= 0;
if (iId>0) then
params.Add('id', iId.ToString);
try
Render(ObjectDict().Add('data', GetGatemaSDScanDataService.GetByParams(params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TGatemaSDScanDataController.GetMeta;
begin
try
Render(ObjectDict().Add('data', GetGatemaSDScanDataService.GetMeta));
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
{ TRTNController }
destructor TRTNController.Destroy;
begin
FSelfSvc.Free;
inherited;
end;
function TRTNController.GetRTNService: TRTNService;
begin
inherited;
if not Assigned(FSelfSvc) then
FSelfSvc:= TRTNService.Create (datMod);
result:= FSelfSvc;
end;
procedure TRTNController.ZapisJSONDoHeliosu (CTX: TWebContext);
var respData, jsonData: string;
// o: System.JSON.TJSONObject;
begin
respData:= '';
try
jsonData:= CTX.Request.Body.Trim;
if (jsonData<>'') then
GetRTNService.ZapisJsonDoHeliosu(jsonData, respData);
ResponseStatus(HTTP_STATUS.OK, 'OK');
Render(respData);
except
RenderStatusMessage (200);
end;
end;
function TRTNController.NactiJSONDataZHeliosu (CTX: TWebContext): string;
var respData, jsonData: string;
// o: System.JSON.TJSONObject;
begin
result:= '';
respData:= '';
try
jsonData:= CTX.Request.Body.Trim;
if (jsonData<>'') then
result:= GetRTNService.NactiDataZHeliosu (jsonData, respData);
ResponseStatus(HTTP_STATUS.OK, 'OK');
Render(respData);
except
RenderStatusMessage (200);
end;
end;
procedure TRTNController.GetPrikazyProEWB (sIdStroj: string = ''; sIDPracoviste: string=''; material: string=''; odDatum: string = ''; doDatum: string = '';
spustene: string='');
var params: TDictionary<string, string>;
idStroj: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
material:= sanitizeSQLString(material);
if (material='1') then
params.Add('material', material);
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
spustene:= sanitizeSQLString(spustene);
if (spustene='1') then
params.Add('spustene', '1');
params.Add('typ', '5');
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TRTNController.GetPrikazyProMicharnu (sIdStroj: string = ''; sIDPracoviste: string=''; odDatum: string = ''; doDatum: string = ''; spustene: string='');
var params: TDictionary<string, string>;
idStroj: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
spustene:= sanitizeSQLString(spustene);
if (spustene='1') then
params.Add('spustene', '1');
params.Add('typ', '1');
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TRTNController.GetPrikazyProMacirnu (sIdStroj: string = ''; sIDPracoviste: string=''; operace: string=''; material: string='';
odDatum: string = ''; doDatum: string = ''; spustene: string='');
var params: TDictionary<string, string>;
idStroj: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
operace:= sanitizeSQLString(operace);
if (operace='1') then
params.Add('operace', '1');
material:= sanitizeSQLString(material);
if (material='1') then
params.Add('material', '1');
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
spustene:= sanitizeSQLString(spustene);
if (spustene='1') then
params.Add('spustene', '1');
// params.Add('idpracovist', datMod.SQLIDsToString (tblCPrac, 'Nazev LIKE N''Z - Čoko%'' OR Nazev LIKE N''Z - Přep%'''));
// params.Add('idstroju', datMod.SQLIDsToString (tblCisStroj, 'Nazev LIKE N''Z - Čoko%'' OR Nazev LIKE N''Z - Přep%'''));
params.Add('typ', '2');
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TRTNController.GetPrikazyProBalicku (sIdStroj: string = ''; operace: string=''; material: string='';
odDatum: string = ''; doDatum: string = ''; spustene: string='');
var params: TDictionary<string, string>;
idStroj: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
operace:= sanitizeSQLString(operace);
if (operace='1') then
params.Add('operace', '1');
material:= sanitizeSQLString(material);
if (material='1') then
params.Add('material', '1');
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
spustene:= sanitizeSQLString(spustene);
if (spustene='1') then
params.Add('spustene', '1');
// params.Add('idpracovist', datMod.SQLIDsToString (tblCPrac, 'Nazev LIKE N''Z - Čoko%'' OR Nazev LIKE N''Z - Přep%'''))
// params.Add('idstroju', datMod.SQLIDsToString (tblCisStroj, 'Nazev LIKE N''%BaliÄka%'''));
params.Add('typ', '4');
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TRTNController.GetPrikazyProBaleni (sIdStroj: string = ''; sIDPracoviste: string=''; operace: string=''; material: string='';
odDatum: string = ''; doDatum: string = ''; spustene: string='');
var params: TDictionary<string, string>;
idStroj: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
operace:= sanitizeSQLString(operace);
if (operace='1') then
params.Add('operace', '1');
material:= sanitizeSQLString(material);
if (material='1') then
params.Add('material', '1');
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
spustene:= sanitizeSQLString(spustene);
if (spustene='1') then
params.Add('spustene', '1');
// params.Add('idpracovist', datMod.SQLIDsToString (tblCPrac, 'Nazev LIKE N''Z - Čoko%'' OR Nazev LIKE N''Z - Přep%'''))
params.Add('idstroju', datMod.SQLIDsToString (tblCisStroj, 'Nazev LIKE N''%BAL%'''));
params.Add('typ', '3');
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
procedure TRTNController.GetPrikazy (sIdStroj: string = ''; sIdPracoviste: string = ''; sTypPrikazu: string=''; odDatum: string = ''; doDatum: string = '');
var params: TDictionary<string, string>;
idStroj, idPracoviste, typVPr: integer;
begin
params:= TDictionary<string, string>.Create;
sIdStroj:= sanitizeSQLString (sIdStroj);
idStroj:= 0;
if (sIdStroj<>'') then
if not(TryStrToInt (sIdStroj, idStroj)) then
idStroj:= 0;
if (idStroj>0) then
params.Add('idstroj', idStroj.ToString);
sIdPracoviste:= sanitizeSQLString (sIdPracoviste);
idPracoviste:= 0;
if (sIdPracoviste<>'') then
if not(TryStrToInt (sIdPracoviste, idPracoviste)) then
idPracoviste:= 0;
if (idPracoviste>0) then
params.Add('idpracoviste', idPracoviste.ToString);
sTypPrikazu:= sanitizeSQLString (sTypPrikazu);
typVPr:= 0;
if (sTypPrikazu<>'') then
if not(TryStrToInt (sTypPrikazu, typVPr)) then
typVPr:= 0;
params.Add('typ', typVPr.ToString);
odDatum:= sanitizeSQLString(odDatum);
if (odDatum<>'') then
params.Add('odDatum', odDatum);
doDatum:= sanitizeSQLString(doDatum);
if (doDatum<>'') then
params.Add('doDatum', doDatum);
try
Render(ObjectDict().Add('data', GetRTNService.GetPrikazy (params))); // viz uSvcCustom.pas
except
RenderStatusMessage (200);
{
on E: EServiceException do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
on E:Exception do
begin
raise EMVCException.Create(E.Message, '', 0, 200);
end;
}
end;
end;
end.