SmartFactory_NEOL/SOURCE/Agent,Kiosk/Lib/base_20251105_old/CustMst.pas
2026-09-04 14:08:41 +09:00

158 lines
5.2 KiB
ObjectPascal
Raw Blame History

unit CustMst;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
wItem,
FireDAC.Stan.Intf,
FireDAC.Stan.Option, FireDAC.Stan.Error, FireDAC.UI.Intf, FireDAC.Phys.Intf,
FireDAC.Stan.Def, FireDAC.Stan.Pool, FireDAC.Stan.Async, FireDAC.Phys,
FireDAC.Stan.Param, FireDAC.DatS, FireDAC.DApt.Intf, FireDAC.DApt,
FireDAC.Phys.PGDef, FireDAC.VCLUI.Wait, FireDAC.Comp.UI, FireDAC.Phys.PG,
Data.DB, FireDAC.Comp.DataSet, FireDAC.Comp.Client;
type
TCustMst = class(TwItem)
private
{ Private declarations }
FOrdCode: string;
FKind: string;
FCustTelNum: string;
FCeoName: string;
FConnPerson: string;
FBusinessNum: string;
FConnPersonTel: string;
FCustAddress: string;
FDescriptions: string;
FKeyItems: string;
FEMail: string;
FBankName: string;
FBankNum: string;
protected
{ Protected declarations }
public
{ Public declarations }
class function xAddSqlMark(velStr: string): string;
class function xGetStrSqlTeamMstList(AQuery: TFDQuery; kindStr, cust: string): TList;
class function LoadFromQuery(AQuery: TFDQuery): TList;
class function xGetStrsDistinctCustName(AQuery: TFDQuery): TStrings;
class function LoadFromStringsQuery(AQuery: TFDQuery): TStrings;
published
{ Published declarations }
property OrdCode: string read FOrdCode write FOrdCode;
property Kind: string read FKind write FKind;
property CustTelNum: string read FCustTelNum write FCustTelNum;
property CeoName: string read FCeoName write FCeoName;
property ConnPerson: string read FConnPerson write FConnPerson;
property BusinessNum: string read FBusinessNum write FBusinessNum;
property ConnPersonTel: string read FConnPersonTel write FConnPersonTel;
property CustAddress: string read FCustAddress write FCustAddress;
property Descriptions: string read FDescriptions write FDescriptions;
property KeyItems: string read FKeyItems write FKeyItems;
property EMail: string read FEMail write FEMail;
property BankName: string read FBankName write FBankName;
property BankNum: string read FBankNum write FBankNum;
end;
implementation
{ TCustMst }
class function TCustMst.LoadFromQuery(AQuery: TFDQuery): TList;
var
curCust: TCustMst;
begin
Result := TList.Create;
while not AQuery.Eof do begin
curCust := TCustMst.Create(nil);
curCust.OBID := AQuery.FieldByName('OBID').AsString;
curCust.Name := AQuery.FieldByName('Name').AsString;
curCust.wClassName := AQuery.FieldByName('wClassName').AsString;
curCust.CreateDate := AQuery.FieldByName('CreateDate').AsString;
curCust.CreateTime := FormatDateTime('hh:nn:ss', AQuery.FieldByName('CreateTime').AsDateTime);
curCust.CreatorID := AQuery.FieldByName('CreatorID').AsString;
curCust.IsValid := AQuery.FieldByName('IsValid').AsString;
curCust.LcStatus := AQuery.FieldByName('LcStatus').AsString;
curCust.OrdCode := AQuery.FieldByName('OrdCode').AsString;
curCust.Kind := AQuery.FieldByName('Kind').AsString;
curCust.CustTelNum := AQuery.FieldByName('CustTelNum').AsString;
curCust.CeoName := AQuery.FieldByName('CeoName').AsString;
curCust.ConnPerson := AQuery.FieldByName('ConnPerson').AsString;
curCust.BusinessNum := AQuery.FieldByName('BusinessNum').AsString;
curCust.ConnPersonTel := AQuery.FieldByName('ConnPersonTel').AsString;
curCust.CustAddress := AQuery.FieldByName('CustAddress').AsString;
curCust.Descriptions := AQuery.FieldByName('Descriptions').AsString;
curCust.KeyItems := AQuery.FieldByName('KeyItems').AsString;
curCust.EMail := AQuery.FieldByName('EMail').AsString;
curCust.BankName := AQuery.FieldByName('BankName').AsString;
curCust.BankNum := AQuery.FieldByName('BankNum').AsString;
Result.Add(curCust);
AQuery.Next;
end;
end;
class function TCustMst.LoadFromStringsQuery(AQuery: TFDQuery): TStrings;
var
valStr: string;
begin
Result := TStringList.Create;
while not AQuery.Eof do begin
valStr := AQuery.FieldByName('Name').AsString;
Result.Add(valStr);
AQuery.Next;
end;
end;
class function TCustMst.xAddSqlMark(velStr: string): string;
begin
Result := '';
Result := '''' + velStr + '''';
end;
class function TCustMst.xGetStrsDistinctCustName(AQuery: TFDQuery): TStrings;
var
sql: string;
begin
Result := nil;
sql := 'SELECT DISTINCT "Name" FROM "CustMst"';
sql := sql + ' WHERE "IsValid"=' + xAddSqlMark('t');
try
AQuery.Close;
AQuery.SQL.Text := sql;
AQuery.Open;
except
on E: Exception do ShowMessage('xGetStrsDistinctCustName <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>: ' + E.Message);
end;
Result := LoadFromStringsQuery(AQuery);
end;
class function TCustMst.xGetStrSqlTeamMstList(AQuery: TFDQuery;
kindStr, cust: string): TList;
var
sql: string;
begin
Result := nil;
sql := 'SELECT * FROM "CustMst"';
sql := sql + ' WHERE "IsValid"=' + xAddSqlMark('t');
if Length(Trim(kindStr)) > 0 then sql := sql + ' AND "Kind"=' + xAddSqlMark(kindStr);
if Length(Trim(cust)) > 0 then sql := sql + ' AND "Name"=' + xAddSqlMark(cust);
try
AQuery.Close;
AQuery.SQL.Text := sql;
AQuery.Open;
except
on E: Exception do ShowMessage('xGetStrSqlTeamMstList <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>: ' + E.Message);
end;
Result := LoadFromQuery(AQuery);
end;
end.