📄 unitsendsmsform.pas
字号:
unit UnitSendSMSForm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls, RzEdit, Mask,
RzBtnEdt, RzButton, RzLabel, RzTabs, ImgList, RzLstBox, ComCtrls,
RzTreeVw, RzPanel, RzDBGrid, ActnList, Menus, RzRadChk, RzRadGrp, Buttons,
RzListVw, RzDBEdit, DBActns;
type
TSendSMSForm = class(TForm)
RzPageControl1: TRzPageControl;
TabSheet1: TRzTabSheet;
TabSheet3: TRzTabSheet;
TabSheet2: TRzTabSheet;
TabSheet4: TRzTabSheet;
ImageList1: TImageList;
RzLabel3: TRzLabel;
RzEdit_QueryCity: TRzEdit;
RzBitBtn2: TRzBitBtn;
ActionList1: TActionList;
PopupMenu1: TPopupMenu;
PopupMenu2: TPopupMenu;
Action_AddAddrGroup: TAction;
Action_EditAddrGroup: TAction;
Action_DelAddrGroup: TAction;
Action_AddSMSGroup: TAction;
Action_EditSMSGroup: TAction;
Action_DelSMSGroup: TAction;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
RzLabel4: TRzLabel;
RzGroupBox1: TRzGroupBox;
RzBitBtn1: TRzBitBtn;
Action_InsertTel: TAction;
Action_InsertSMS: TAction;
Action_InsertEndDefName: TAction;
RzListView_AddRequest: TRzListView;
RzEdit_QueryTel: TRzEdit;
RzDBGrid_AddrGroup: TRzDBGrid;
RzDBGrid_TextGroup: TRzDBGrid;
RzPanel1: TRzPanel;
RzDBGrid_Addr: TRzDBGrid;
RzPanel2: TRzPanel;
RzDBGrid_Text: TRzDBGrid;
DataSetInsert1: TDataSetInsert;
DataSetDelete1: TDataSetDelete;
DataSetEdit1: TDataSetEdit;
DataSetPost1: TDataSetPost;
DataSetCancel1: TDataSetCancel;
DataSetInsert2: TDataSetInsert;
DataSetDelete2: TDataSetDelete;
DataSetEdit2: TDataSetEdit;
DataSetPost2: TDataSetPost;
DataSetCancel2: TDataSetCancel;
RzPanel3: TRzPanel;
RzBitBtn4: TRzBitBtn;
RzBitBtn5: TRzBitBtn;
RzBitBtn6: TRzBitBtn;
RzBitBtn7: TRzBitBtn;
RzBitBtn8: TRzBitBtn;
RzPanel4: TRzPanel;
RzLabel6: TRzLabel;
RzLabel7: TRzLabel;
RzLabel8: TRzLabel;
RzDBEdit1: TRzDBEdit;
RzDBEdit2: TRzDBEdit;
RzDBEdit3: TRzDBEdit;
RzPanel5: TRzPanel;
RzBitBtn9: TRzBitBtn;
RzBitBtn10: TRzBitBtn;
RzBitBtn11: TRzBitBtn;
RzBitBtn12: TRzBitBtn;
RzBitBtn13: TRzBitBtn;
RzPanel6: TRzPanel;
RzLabel9: TRzLabel;
RzDBEdit4: TRzDBEdit;
RzLabel10: TRzLabel;
RzDBEdit5: TRzDBEdit;
RzLabel11: TRzLabel;
RzDBEdit6: TRzDBEdit;
RzBitBtn14: TRzBitBtn;
RzPanel7: TRzPanel;
RzLabel_Tel: TRzLabel;
RzURLLabel2: TRzURLLabel;
RzMemo_RequestTel: TRzMemo;
RzLabel_Text: TRzLabel;
RzLabel_TextCount: TRzLabel;
RzURLLabel1: TRzURLLabel;
RzMemo_RequestText: TRzMemo;
RzBitBtn3: TRzBitBtn;
RzLabel1: TRzLabel;
RzLabel2: TRzLabel;
RzLabel5: TRzLabel;
RzEdit_QueryArea: TRzEdit;
RzEdit_QueryType: TRzEdit;
RzEdit_QueryRegion: TRzEdit;
RzBitBtn_EditTel: TRzBitBtn;
RzBitBtn_SaveTel: TRzBitBtn;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure Action_AddAddrGroupExecute(Sender: TObject);
procedure Action_EditAddrGroupExecute(Sender: TObject);
procedure Action_DelAddrGroupExecute(Sender: TObject);
procedure Action_AddSMSGroupExecute(Sender: TObject);
procedure Action_EditSMSGroupExecute(Sender: TObject);
procedure Action_DelSMSGroupExecute(Sender: TObject);
procedure RzBitBtn1Click(Sender: TObject);
procedure RzListView_AddRequestDblClick(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure RzMemo_RequestTelKeyPress(Sender: TObject; var Key: Char);
procedure RzBitBtn14Click(Sender: TObject);
procedure RzMemo_RequestTextChange(Sender: TObject);
procedure RzURLLabel2Click(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure RzURLLabel1Click(Sender: TObject);
procedure RzBitBtn2Click(Sender: TObject);
procedure RzEdit_QueryTelChange(Sender: TObject);
procedure RzEdit_QueryTelKeyPress(Sender: TObject; var Key: Char);
procedure RzBitBtn_EditTelClick(Sender: TObject);
procedure RzBitBtn_SaveTelClick(Sender: TObject);
private
FSendTel, FSendData: string;
procedure OpenAddr;
procedure OpenText;
public
constructor Create(AOwner: TComponent; SendTel, SendData: string);
end;
const
YES_SEND = '已发';
NO_SEND = '未发';
implementation
uses UnitDM, UnitSelectTelForm, UnitSelectTextForm, UnitPublicFun;
{$R *.dfm}
procedure TSendSMSForm.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key=27 then Close;
end;
procedure TSendSMSForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action := caFree;
DM.DSet_AddrGroup.Close;
DM.DSet_Addr.Close;
DM.DSet_TextGroup.Close;
DM.DSet_Text.Close;
end;
procedure TSendSMSForm.FormShow(Sender: TObject);
begin
OpenAddr;
OpenText;
RzPageControl1.ActivePage := TabSheet1;
if FSendTel<>'' then
begin
RzMemo_RequestTel.Lines.Add(FSendTel);
RzMemo_RequestText.SetFocus;
end;
if FSendData<>'' then
begin
RzMemo_RequestText.Lines.Text := FSendData;
end;
end;
procedure TSendSMSForm.Action_AddAddrGroupExecute(Sender: TObject);
var
s1: string;
begin
//增加通讯群组
if not InputQuery('请输入 ', '通讯群组名称: ', s1) then
begin
Exit;
end;
s1 := Trim(s1);
if s1='' then
begin
Application.MessageBox('群组名称不能为空,增加通讯群组失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if not DM.AddAddrGroup(s1) then
begin
Application.MessageBox('更新通讯群组数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenAddr;
end;
procedure TSendSMSForm.Action_EditAddrGroupExecute(Sender: TObject);
var
s1, s2: string;
begin
//修改通讯群组
s1 := DM.DSet_AddrGroup.FieldByName('addrgroup_name').AsString;
s1 := InputBox('请输入 ', '通讯群组名称: ', s1);
s1 := Trim(s1);
if s1=DM.DSet_AddrGroup.FieldByName('addrgroup_name').AsString then
begin
Exit;
end;
if s1='' then
begin
Application.MessageBox('群组名称不能为空,修改通讯群组失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
s2 := DM.DSet_AddrGroup.FieldByName('addrgroup_id').AsString;
if s2='' then
begin
Application.MessageBox('群组编号不存在,修改通讯群组失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if not DM.UpdateAddrGroup(s2, s1) then
begin
Application.MessageBox('更新通讯群组数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenAddr;
end;
procedure TSendSMSForm.Action_DelAddrGroupExecute(Sender: TObject);
var
s2: string;
begin
//删除通讯群组
s2 := DM.DSet_AddrGroup.FieldByName('addrgroup_id').AsString;
if s2='' then
begin
Application.MessageBox('群组编号不存在,修改通讯群组失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if Application.MessageBox(PChar('真的要删除群组 "'+DM.DSet_AddrGroup.FieldByName('addrgroup_name').AsString+'" 及其群组下的所有通讯联系人吗?'),'提示',MB_OKCancel + MB_DEFBUTTON2 + MB_IconQuestion)<>ID_OK then
begin
Exit;
end;
if not DM.DelAddrGroup(s2) then
begin
Application.MessageBox('更新通讯群组数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenAddr;
end;
procedure TSendSMSForm.Action_AddSMSGroupExecute(Sender: TObject);
var
s1: string;
begin
//增加常用短语类别
if not InputQuery('请输入 ', '常用短语类别: ', s1) then
begin
Exit;
end;
s1 := Trim(s1);
if s1='' then
begin
Application.MessageBox('常用短语类别不能为空,增加常用短语类别失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
if not DM.AddTextGroup(s1) then
begin
Application.MessageBox('更新常用短语类别数据失败!', '错误', MB_OK + MB_ICONWARNING);
Exit;
end;
OpenText;
end;
procedure TSendSMSForm.Action_EditSMSGroupExecute(Sender: TObject);
var
s1, s2: string;
begin
//修改常用短语类别
s1 := DM.DSet_TextGroup.FieldByName('textgroup_name').AsString;
s1 := InputBox('请输入 ', '常用短语类别: ', s1);
s1 := Trim(s1);
if s1=DM.DSet_TextGroup.FieldByName('textgroup_name').AsString then
begin
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -