📄 u_main.~pas
字号:
end;
//系统参数设置
procedure TMCTIForm.N2Click(Sender: TObject);
begin
CSSZ.ShowModal;
GetList;
end;
//系统用户管理
procedure TMCTIForm.N6Click(Sender: TObject);
begin
With TFYHGL.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
//操作员重新登录
procedure TMCTIForm.N8Click(Sender: TObject);
begin
With TFLogin.Create(Application) Do
Begin
CanNotCloseUntilOK:=False;
ShowModal;
Free;
End;
ReSetMenu(MainMenu1,CZYQX);
N14.Caption:='操作员:'+CZYXM;
DBComboBoxEh4.Enabled:=(Pos('故障现象',CZYQX)>0);
DBDateTimeEditEh3.Enabled:=(Pos('派工时间',CZYQX)>0);
DBDateTimeEditEh2.Enabled:=(Pos('完工时间',CZYQX)>0);
DBDateTimeEditEh1.Enabled:=(Pos('预约时间',CZYQX)>0);
DBComboBoxEh5.Enabled:=(Pos('维修/安装人',CZYQX)>0);
DBComboBoxEh12.Enabled:=(Pos('监控判断结果',CZYQX)>0);
DBComboBoxEh11.Enabled:=(Pos('CM在线',CZYQX)>0);
DBEditEh7.Enabled:=(Pos('设备信噪比',CZYQX)>0);
DBEditEh9.Enabled:=(Pos('端口利用率',CZYQX)>0);
DBComboBoxEh6.Enabled:=(Pos('维修结果及原因',CZYQX)>0);
DBEditEh10.Enabled:=(Pos('故障备注',CZYQX)>0);
DBComboBoxEh10.Enabled:=(Pos('回访结果',CZYQX)>0);
end;
//修改操作员密码
procedure TMCTIForm.N11Click(Sender: TObject);
begin
With TFEditPS.Create(Application) Do
Begin
ShowModal;
Free;
End;
end;
//显示已经选择的维修人
procedure TMCTIForm.DBComboBoxEh5EditButtons0Click(Sender: TObject;
var Handled: Boolean);
Var I:Integer;
Stemp:String;
begin
CheckListBox1.Visible:=Not CheckListBox1.Visible;
If Not CheckListBox1.Visible Then Exit;
Stemp:=Query1.FieldByName('维修员').AsString;
For I:=0 To CheckListBox1.Items.Count-1 Do
CheckListBox1.Checked[I]:=Pos(CheckListBox1.Items[I],Stemp)>0;
end;
procedure TMCTIForm.DBComboBoxEh5Click(Sender: TObject);
begin
If CheckListBox1.Visible Then CheckListBox1.Visible:=False;
end;
//选择维修人
procedure TMCTIForm.CheckListBox1ClickCheck(Sender: TObject);
Var I:Integer;
Stemp:String;
begin
If Not Query1.Active Then Exit;
If Query1.State<>dsEdit Then Query1.Edit;
Stemp:='';
For I:=0 To CheckListBox1.Items.Count-1 Do
If CheckListBox1.Checked[I] Then
Begin
If Stemp='' Then
Stemp:=CheckListBox1.Items[I]
Else
Stemp:=Stemp+','+CheckListBox1.Items[I];
End;
Query1.FieldByName('维修员').AsString:=Stemp;
end;
procedure TMCTIForm.DataSource1StateChange(Sender: TObject);
begin
SpeedButton1.Enabled:=(Query1.State=dsEdit);
end;
procedure TMCTIForm.N15Click(Sender: TObject);
begin
With TZXXX.Create(Application) Do
Begin
ShowModal;
Free;
End;
GetList;
end;
//察看相关资料
procedure TMCTIForm.SPB_DOCClick(Sender: TObject);
Var Info,Http:String;
begin
If Not Query1.Active Then Exit;
If Query1.FieldByName('咨询内容').IsNull Then Exit;
Info:=Query1.FieldByName('咨询内容').AsString;
Http:=GetHttp(Info);
If Http='' Then
Application.MessageBox('没有与信息相关的连接无法察看!','提示',MB_OK+MB_ICONSTOP)
Else
With TInfoView.Create(Application) Do
Begin
URL:=Http;
Show;
End;
end;
//显示日程安排
procedure TMCTIForm.SpeedButton3Click(Sender: TObject);
begin
With TRCAP.Create(Application) Do
Begin
If Query1.Active Then
If Not Query1.FieldByName('预约时间').IsNull Then
ShowDate:=Query1.FieldByName('预约时间').AsDateTime;
Show;
End;
end;
procedure TMCTIForm.SPB_SEARCHClick(Sender: TObject);
begin
If Not Query1.Active Then Exit;
If Query1.State<>dsEdit Then Query1.Edit;
If ((DBComboBoxEh2.Text='模拟') OR (DBComboBoxEh2.Text='')) Then
Begin
With TYHCZ.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
DBEditEh1.Text:=QueryYHXX.FieldByName('YongHDM').AsString;
DBEditEh2.Text:=QueryYHXX.FieldByName('XingM').AsString;
DBEditEh3.Text:=QueryYHXX.FieldByName('DiZ').AsString;
QuickSearch('','','');
End;
Free;
End;
End
Else If DBComboBoxEh2.Text='宽带' Then
Begin
With TIPYHCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
DBEditEh1.Text:=QueryIPYH.FieldByName('用户代码').AsString;
DBEditEh2.Text:=QueryIPYH.FieldByName('用户姓名').AsString;
DBEditEh3.Text:=QueryIPYH.FieldByName('地址').AsString;
QuickSearch('','','');
End;
Free;
End;
End
Else If DBComboBoxEh2.Text='数字' Then
Begin
With TYHXXCX.Create(Application) Do
Begin
If ShowModal=mrOK Then
Begin
DBEditEh1.Text:=QueryJDH.FieldByName('用户编号').AsString;
DBEditEh2.Text:=QueryJDH.FieldByName('用户姓名').AsString;
DBEditEh3.Text:=QueryJDH.FieldByName('安装地址').AsString;
QuickSearch('','','');
End;
Free;
End;
End;
end;
//使用输入的内容快速查询
Procedure TMCTIForm.QuickSearch(DM,XM,DZ:String);
Var S1,S2,S3:String;
Procedure RecToList1; //数字
Begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select * From '+DB_SZ+'.用户信息,'+DB_SZ+'.机顶盒 Where 机顶盒.用户编号=用户信息.用户编号');
If S1<>'' Then QPub.SQL.Add('And 用户信息.用户编号 Like '+#39+S1+'%'+#39);
If S2<>'' Then QPub.SQL.Add('And 用户姓名 Like '+#39+'%'+S2+'%'+#39);
If S3<>'' Then QPub.SQL.Add('And 安装地址 Like '+#39+'%'+S3+'%'+#39);
QPub.Open;
While Not QPub.Eof Do
Begin
Inc(FindNum);
With FindUsers[FindNum] Do
Begin
LX:='数字';
BH:=QPub.FieldByName('用户编号').AsString;
ID:=-1;
XM:=QPub.FieldByName('用户姓名').AsString;
QH:=QPub.FieldByName('用户区域').AsString;
DZ:=QPub.FieldByName('安装地址').AsString;
LXR:=QPub.FieldByName('用户姓名').AsString;
LXFS:=QPub.FieldByName('联系电话').AsString;
CZRQ:=QPub.FieldByName('开户时间').AsString;
JFRQ:=QPub.FieldByName('计费日期').AsString;
IC:=QPub.FieldByName('IC卡号').AsString;
JDH:=QPub.FieldByName('机顶盒号').AsString;
MAC:='';
IP:='';
JZNY:=QPub.FieldByName('到费日期').AsString;
YHZT:=QPub.FieldByName('状态').AsString;
NZYE:=QPub.FieldByName('本机余额').AsString;
BZ:=QPub.FieldByName('备注').AsString;
End;
QPub.Next;
If FindNum>=254 Then Break;
End;
End;
Procedure RecToList2; //宽带
Begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select * From '+DB_KD+'.用户信息 Where 1>0');
If S1<>'' Then QPub.SQL.Add('And 用户代码 Like '+#39+S1+'%'+#39);
If S2<>'' Then QPub.SQL.Add('And 用户姓名 Like '+#39+'%'+S2+'%'+#39);
If S3<>'' Then QPub.SQL.Add('And 地址 Like '+#39+'%'+S3+'%'+#39);
QPub.Open;
While Not QPub.Eof Do
Begin
Inc(FindNum);
With FindUsers[FindNum] Do
Begin
LX:='宽带';
BH:=QPub.FieldByName('用户代码').AsString;
ID:=QPub.FieldByName('ID').AsInteger;
XM:=QPub.FieldByName('用户姓名').AsString;
QH:='';
DZ:=QPub.FieldByName('地址').AsString;
LXR:=QPub.FieldByName('用户姓名').AsString;
LXFS:=QPub.FieldByName('联系方式').AsString;
CZRQ:=QPub.FieldByName('安装日期').AsString;
JFRQ:=QPub.FieldByName('计费日期').AsString;
IC:='';
JDH:='';
MAC:=QPub.FieldByName('MAC地址').AsString;
IP:=QPub.FieldByName('IP地址').AsString;
JZNY:=QPub.FieldByName('到费日期').AsString;
YHZT:=QPub.FieldByName('用户状态').AsString;
NZYE:='';
BZ:=QPub.FieldByName('备注').AsString;
KDLX:=QPub.FieldByName('宽带用户类型').AsString;
End;
QPub.Next;
If FindNum>=254 Then Break;
End;
End;
Procedure RecToList3; //模拟
Begin
QPub.Close;
QPub.SQL.Clear;
QPub.SQL.Add('Select * From '+DB_MN+'.YHXX Where 1>0');
If S1<>'' Then QPub.SQL.Add('And YongHDM Like '+#39+S1+'%'+#39);
If S2<>'' Then QPub.SQL.Add('And XingM Like '+#39+'%'+S2+'%'+#39);
If S3<>'' Then QPub.SQL.Add('And DiZ Like '+#39+'%'+S3+'%'+#39);
QPub.Open;
While Not QPub.Eof Do
Begin
Inc(FindNum);
With FindUsers[FindNum] Do
Begin
LX:='模拟';
BH:=QPub.FieldByName('YongHDM').AsString;
ID:=-1;
XM:=QPub.FieldByName('XingM').AsString;
QH:=QPub.FieldByName('QuH').AsString;
DZ:=QPub.FieldByName('DiZ').AsString;
LXR:=QPub.FieldByName('XingM').AsString;
LXFS:=QPub.FieldByName('DianH').AsString;
ZZDS:=QPub.FieldByName('ZhongDS').AsInteger;
FZDS:=QPub.FieldByName('ZhongDS2').AsInteger;
CZRQ:=QPub.FieldByName('ChuZRQ').AsString;
JFRQ:=QPub.FieldByName('JiFRQ').AsString;
IC:='';
JDH:='';
MAC:='';
IP:='';
JZNY:=QPub.FieldByName('JZNY').AsString;
YHZT:=QPub.FieldByName('YHZT').AsString;
NZYE:=QPub.FieldByName('YuE12').AsString;
BZ:=QPub.FieldByName('BeiZ').AsString;
End;
QPub.Next;
If FindNum>=254 Then Break;
End;
End;
Begin
FindNum:=-1;
Idx:=-1;
If Not Query1.Active Then Exit;
If Query1.FieldByName('序号').IsNull Then Exit;
If ((DM='') AND (XM='') AND (DZ='')) Then
Begin
S1:=DBEditEh1.Text;
S2:=DBEditEh2.Text;
S3:=DBEditEh3.Text;
End
Else
Begin
S1:=DM;
S2:=XM;
S3:=DZ;
End;
If ((S1='') AND (S2='') AND (S3='')) Then
Begin
Application.MessageBox('请输入至少一个查询条件!','提示',MB_OK+MB_ICONSTOP);
Exit;
End;
If Query1.FieldByName('业务类型').AsString='数字' Then RecToList1
Else If Query1.FieldByName('业务类型').AsString='宽带' Then RecToList2
Else RecToList3;
//选择查询结果
If FindNum=0 Then
Idx:=0
Else If FindNum>0 Then
Begin
If UserView.ShowModal=mrOK Then
Idx:=UserView.SelIndex;
End;
If Idx>=0 Then
Begin
If FindUsers[Idx].LX='模拟' Then
Begin
FindNum:=Idx;
FindUsers[Idx+1].LX:='';
S1:=FindUsers[Idx].BH; S2:=''; S3:='';
RecToList2;
End
Else If FindUsers[Idx].LX='宽带' Then
Begin
FindNum:=Idx;
FindUsers[Idx+1].LX:='';
S1:=FindUsers[Idx].BH; S2:=''; S3:='';
RecToList3;
End;
If ((DM='') AND (XM='') AND (DZ='') AND (Pos('修改业务信息',CZYQX)>0)) Then
GetData(True)
Else
GetData(False);
End;
End;
//根据查询得到的代码 得到数据 显示相关信息
Procedure TMCTIForm.GetData(EditData:Boolean);
Begin
If Idx<0 Then Exit;
If EditData Then
Begin
If Query1.State<>dsEdit Then Query1.Edit;
Query1.FieldByName('用户编码').AsString:=FindUsers[Idx].BH;
Query1.FieldByName('用户名').AsString:=FindUsers[Idx].XM;
DBEditEh2.Text:=FindUsers[Idx].XM;
Query1.FieldByName('片区').AsString:=FindUsers[Idx].QH;
Query1.FieldByName('地址').AsString:=FindUsers[Idx].DZ;
DBEditEh3.Text:=FindUsers[Idx].DZ;
//If Query1.FieldByName('联系人').IsNull Then
Query1.FieldByName('联系人').AsString:=FindUsers[Idx].LXR;
//If Query1.FieldByName('联系方式').IsNull Then
Query1.FieldByName('联系方式').AsString:=FindUsers[Idx].LXFS;
//Query1.Post;
End;
Memo1.Lines.Clear;
Memo1.Lines.Add('-----------------------------------'+FindUsers[Idx].LX+'-----------------------------------');
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['初装日期:',FindUsers[Idx].CZRQ,'计费日期:',FindUsers[Idx].JFRQ]));
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['交至年月:',FindUsers[Idx].JZNY,'用户状态:',FindUsers[Idx].YHZT]));
If FindUsers[Idx].LX='宽带' Then
Memo1.Lines.Add(Format('%10s %-40s',['宽带类型:',FindUsers[Idx].KDLX]));
Memo1.Lines.Add(Format('%10s %-40s',['余 额:',FindUsers[Idx].NZYE]));
If FindUsers[Idx].LX='模拟' Then
Memo1.Lines.Add(Format('%10s %-40d %10s %-30d',['主终端数:',FindUsers[Idx].ZZDS,'副终端数:',FindUsers[Idx].FZDS]));
If FindUsers[Idx].LX='宽带' Then
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['MAC :',FindUsers[Idx].MAC,'IP :',FindUsers[Idx].IP]));
If FindUsers[Idx].LX='数字' Then
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['IC卡 :',FindUsers[Idx].IC,'机顶盒 :',FindUsers[Idx].JDH]));
Memo1.Lines.Add(Format('%10s %-40s',['备 注:',FindUsers[Idx].BZ]));
If FindUsers[Idx].LX='模拟' Then
Begin
//显示宽带相关信息
If FindUsers[Idx+1].LX='宽带' Then
Begin
Memo1.Lines.Add('-----------------------------------宽带-----------------------------------');
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['初装日期:',FindUsers[Idx+1].CZRQ,'计费日期:',FindUsers[Idx+1].JFRQ]));
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['交至年月:',FindUsers[Idx+1].JZNY,'用户状态:',FindUsers[Idx+1].YHZT]));
Memo1.Lines.Add(Format('%10s %-40s',['余 额:',FindUsers[Idx+1].NZYE]));
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['MAC :',FindUsers[Idx+1].MAC,'IP :',FindUsers[Idx+1].IP]));
Memo1.Lines.Add(Format('%10s %-40s',['备 注:',FindUsers[Idx+1].BZ]));
End;
End
Else If FindUsers[Idx].LX='宽带' Then
Begin
//显示模拟相关信息
If FindUsers[Idx+1].LX='模拟' Then
Begin
Memo1.Lines.Add('-----------------------------------模拟-----------------------------------');
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['初装日期:',FindUsers[Idx+1].CZRQ,'计费日期:',FindUsers[Idx+1].JFRQ]));
Memo1.Lines.Add(Format('%10s %-40s %10s %-30s',['交至年月:',FindUsers[Idx+1].JZNY,'用户状态:',FindUsers[Idx+1].YHZT]));
Memo1.Lines.Add(Format('%10s %-40s',['余 额:',FindUsers[Idx+1].NZYE]));
Memo1.Lines.Add(Format('%10s %-40s',['备 注:',FindUsers[Idx+1].BZ]));
End;
End;
End;
//用用户代码查询
procedure TMCTIForm.DBEditEh3KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
If Key<>VK_Return Then Exit;
If ((Sender=DBEditEh1) AND (DBEditEh1.Text<>'')) Then
Begin
DBEditEh2.Text:='';
DBEditEh3.Text:='';
End;
QuickSearch('','','');
end;
procedure TMCTIForm.DBEditEh1DblClick(Sender: TObject);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -