⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 operatelog.pas

📁 采用Delphi7+Oracle. 该软件是由交警人员对各个路口闯红灯违法照片进行有效保存
💻 PAS
字号:
unit OperateLog;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, TFlatButtonUnit, ComCtrls, StdCtrls, SjfyFrm;

type
  TfrmOperateLog = class(TForm)
    GroupBox1: TGroupBox;
    chk3: TCheckBox;
    cobOper: TComboBox;
    chk1: TCheckBox;
    dtStart: TDateTimePicker;
    chk2: TCheckBox;
    dtEnd: TDateTimePicker;
    btnSearch: TFlatButton;
    btnDelete: TFlatButton;
    TFrmSjfy1: TFrmSjfy;
    procedure FormShow(Sender: TObject);
    procedure btnSearchClick(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure btnDeleteClick(Sender: TObject);
  private
    { Private declarations }
  public
    function GetSQL(bz:boolean):string;
    { Public declarations }
  end;

var
  frmOperateLog: TfrmOperateLog;

implementation

uses dbConn;

{$R *.dfm}

procedure TfrmOperateLog.FormShow(Sender: TObject);
var
  sqlsql:String;
begin
     //show operater
     sqlsql:='';
     sqlsql:='SELECT USERID,USERNAME FROM photocheck.P_USER';
     dbconn.loadCombox(cobOper,sqlsql,false);
     cobOper.ItemIndex := 1;
end;

procedure TfrmOperateLog.btnSearchClick(Sender: TObject);
var
  rowCount,i:Integer;
begin
 if not ((chk1.Checked) or (chk2.Checked) or (chk3.Checked)) then
    begin
        MessageBox(0,'请选定查询条件进行查询', '保护信息', 64);
        exit;
    end;
    TFrmSjfy1.beginQuery(GetSQL(true),10);
    rowCount:=TFrmSjfy1.DBGrid.DataSource.DataSet.FieldCount -1 ;
    for  i:=0 to rowCount do
    begin
        TFrmSjfy1.DBGrid.Columns.Items [i].Width := 90;
    end;
end;

procedure TfrmOperateLog.FormActivate(Sender: TObject);
begin
    TFrmSjfy1.ADODataSet1.Connection := cn_public;

end;


function TfrmOperateLog.GetSQL(bz:boolean):string;
var
  sql : String;
begin
  if bz=true then
  begin
    sql := 'select  o.userid 用户ID,o.username 用户名称,o.operateitem 操作项目,o.operatedate 操作时间,rownum from photocheck.P_OPERATELOG o where ';
  end;
  if bz=false then
  begin
    sql := 'delete  from photocheck.P_OPERATELOG  where ';
  end;
  if chk3.Checked then
  begin
      sql := sql + ' userid= ''' + getdm(cobOper.Text) + ''' and ';
  end;
  if chk1.Checked then
  begin
       sql := sql + ' operatedate >= to_date(''' + FormatDateTime('yyyy-mm-dd 00:00:00',dtStart.DateTime ) + ''',''yyyy-mm-dd HH24:mi:ss'')  and ';
  end;
  if chk2.Checked then
  begin
         sql := sql + ' operatedate <= to_date(''' + FormatDateTime('yyyy-mm-dd 23:59:59',dtEnd.datetime ) + ''',''yyyy-mm-dd HH24:mi:ss'')  and ';
  end;
  if bz=true then
  begin
    sql := sql + '1 = 1 order by 用户ID';
  end;
  if bz=false then
  begin
    sql := sql + '1=1 ';
  end;
  result := sql;
end;

procedure TfrmOperateLog.btnDeleteClick(Sender: TObject);
begin
    //删除所查询出结果的数据
    if messagedlg('你确定要删除您刚才所查询的操作日志吗?',mtConfirmation,[mbYes,mbno],0)=mrYes then
    begin
       dbConn.Execute_SQL(GetSQL(false));
       messagebox(0,'删除成功!','操作日志管理',64);
       btnSearch.Click ;
    end
    else
    begin
      exit;
    end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -