📄 u_yhgl.pas
字号:
unit U_YHGL;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, Db, DBTables, ExtCtrls, DBCtrls, StdCtrls, Buttons, Mask,
ImgList, Menus;
type
TFYHGL = class(TForm)
Query1: TQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
BitBtn1: TBitBtn;
UpdateSQL1: TUpdateSQL;
GroupBox1: TGroupBox;
Image1: TImage;
Label1: TLabel;
Query2: TQuery;
GroupBox2: TGroupBox;
ListBox1: TListBox;
ListBox2: TListBox;
Label2: TLabel;
Label3: TLabel;
BitBtn2: TBitBtn;
SpeedButton1: TSpeedButton;
SpeedButton4: TSpeedButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
PopupMenu2: TPopupMenu;
MenuItem1: TMenuItem;
PopupMenu3: TPopupMenu;
N2: TMenuItem;
procedure Query1NewRecord(DataSet: TDataSet);
procedure Query1BeforePost(DataSet: TDataSet);
procedure Query1AfterPost(DataSet: TDataSet);
procedure ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure ListBox2DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure ListBox2DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure SpeedButton4Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure FormShow(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure N1Click(Sender: TObject);
procedure MenuItem1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FYHGL: TFYHGL;
implementation
Uses U_Pub, U_Main;
{$R *.DFM}
//缺省密码
procedure TFYHGL.Query1NewRecord(DataSet: TDataSet);
begin
Query1.FieldByName('YHMM').AsString:='SUNCER';
end;
//生成主键
procedure TFYHGL.Query1BeforePost(DataSet: TDataSet);
begin
If Not Query1.FieldByName('YHBM').IsNull Then Exit;
Query2.Close;
Query2.Open;
Query1.FieldByName('YHBM').AsInteger:=Query2.FieldByName('MAXBM').AsInteger+1;
end;
//提交数据
procedure TFYHGL.Query1AfterPost(DataSet: TDataSet);
begin
Query1.ApplyUpdates;
Query1.CommitUpdates;
end;
procedure TFYHGL.ListBox1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=(Source=ListBox2);
end;
procedure TFYHGL.ListBox2DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
Accept:=(Source=ListBox1);
end;
procedure TFYHGL.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
Var I,N:Integer;
begin
If ListBox2.ItemIndex<0 Then Exit;
N:=ListBox2.Items.Count;
For I:=N-1 DownTo 0 Do
If ListBox2.Selected[I] Then
Begin
ListBox1.Items.Add(ListBox2.Items[I]);
ListBox2.Items.Delete(I);
End;
end;
procedure TFYHGL.ListBox2DragDrop(Sender, Source: TObject; X, Y: Integer);
Var I,N:Integer;
begin
If ListBox1.ItemIndex<0 Then Exit;
N:=ListBox1.Items.Count;
For I:=N-1 DownTo 0 Do
If ListBox1.Selected[I] Then
Begin
ListBox2.Items.Add(ListBox1.Items[I]);
ListBox1.Items.Delete(I);
End;
end;
procedure TFYHGL.SpeedButton4Click(Sender: TObject);
begin
ListBox2DragDrop(Sender,ListBox1,0,0);
end;
procedure TFYHGL.SpeedButton1Click(Sender: TObject);
begin
ListBox1DragDrop(Sender,ListBox2,0,0);
end;
//保存用户权限设置
procedure TFYHGL.BitBtn2Click(Sender: TObject);
Var I,N:Integer;
Stemp:String;
begin
If Query1.FieldByName('YHBM').IsNull Then Exit;
Stemp:='';
N:=ListBox1.Items.Count;
For I:=0 To N-1 Do
Stemp:=Stemp+'/'+ListBox1.Items[I]+'/';
If Not(DataSource1.State in [dsEdit, dsInsert]) Then
Query1.Edit;
Query1.FieldByName('YHQX').AsString:=Stemp;
end;
//显示用户当前的权限
procedure TFYHGL.DataSource1DataChange(Sender: TObject; Field: TField);
Var Stemp,C:String;
I:Integer;
begin
Stemp:=Query1.FieldByName('YHQX').AsString;
ListBox1.Items.AddStrings(ListBox2.Items);
ListBox2.Items.Clear;
I:=0;
While I<=ListBox1.Items.Count-1 Do
Begin
C:='/'+ListBox1.Items[I]+'/';
If Pos(C,Stemp)<=0 Then
Begin
ListBox2.Items.Add(ListBox1.Items[I]);
ListBox1.Items.Delete(I);
End
Else
Inc(I);
End;
end;
procedure TFYHGL.FormShow(Sender: TObject);
begin
//系统菜单
Menu2List(MCTIForm.MainMenu1,ListBox2);
ListBox2.Items.Add('派工权限');
ListBox2.Items.Add('无编码宽带用户登记');
ListBox2.Items.Add('修改业务信息');
ListBox2.Items.Add('编辑.故障现象');
ListBox2.Items.Add('编辑.派工时间');
ListBox2.Items.Add('编辑.完工时间');
ListBox2.Items.Add('编辑.预约时间');
ListBox2.Items.Add('编辑.维修/安装人');
ListBox2.Items.Add('编辑.监控判断结果');
ListBox2.Items.Add('编辑.CM在线');
ListBox2.Items.Add('编辑.设备信噪比');
ListBox2.Items.Add('编辑.端口利用率');
ListBox2.Items.Add('编辑.维修结果及原因');
ListBox2.Items.Add('编辑.故障类型');
ListBox2.Items.Add('编辑.故障备注');
ListBox2.Items.Add('编辑.回访结果');
Query1.Open;
end;
procedure TFYHGL.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Query1.Close;
end;
procedure TFYHGL.N1Click(Sender: TObject);
Var I:Integer;
begin
For I:=0 To ListBox1.Items.Count-1 Do
ListBox1.Selected[I]:=True;
end;
procedure TFYHGL.MenuItem1Click(Sender: TObject);
Var I:Integer;
begin
For I:=0 To ListBox2.Items.Count-1 Do
ListBox2.Selected[I]:=True;
end;
procedure TFYHGL.N2Click(Sender: TObject);
begin
If Application.MessageBox('你确认要初始化该用户的密码吗?','提示',MB_YESNO+MB_ICONQUESTION)<>IDYES Then Exit;
If Not(Query1.State In [dsEdit,dsInsert]) Then Query1.Edit;
Query1NewRecord(Query1);
Application.MessageBox('密码已初始化,请保存!','提示',MB_OK+MB_ICONINFORMATION);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -