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

📄 khsj_un.pas

📁 布林电话收费管理系统
💻 PAS
字号:
unit khsj_un;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, stand_un, BusinessSkinForm, bsSkinCtrls, StdCtrls, Mask,
  bsSkinBoxCtrls, bsMessages;

type
  Tkhsj = class(Tstand)
    bsSkinPanel1: TbsSkinPanel;
    bsSkinXFormButton2: TbsSkinXFormButton;
    bsSkinXFormButton3: TbsSkinXFormButton;
    bsSkinXFormButton4: TbsSkinXFormButton;
    bsSkinGroupBox3: TbsSkinGroupBox;
    bsSkinXFormButton5: TbsSkinXFormButton;
    bsSkinGroupBox5: TbsSkinGroupBox;
    bsSkinLabel1: TbsSkinLabel;
    bsSkinEdit1: TbsSkinEdit;
    bsSkinLabel2: TbsSkinLabel;
    bsSkinEdit2: TbsSkinEdit;
    bsSkinLabel3: TbsSkinLabel;
    bsSkinEdit3: TbsSkinEdit;
    bsSkinLabel4: TbsSkinLabel;
    bsSkinEdit4: TbsSkinEdit;
    bsSkinLabel5: TbsSkinLabel;
    bsSkinEdit5: TbsSkinEdit;
    bsSkinLabel6: TbsSkinLabel;
    bsSkinEdit6: TbsSkinEdit;
    bsSkinLabel7: TbsSkinLabel;
    bsSkinEdit7: TbsSkinEdit;
    bsSkinLabel8: TbsSkinLabel;
    bsSkinEdit8: TbsSkinEdit;
    bsSkinPanel2: TbsSkinPanel;
    bsSkinGroupBox2: TbsSkinGroupBox;
    bsSkinGroupBox4: TbsSkinGroupBox;
    bsSkinCheckListBox1: TbsSkinCheckListBox;
    bsSkinLabel9: TbsSkinLabel;
    bsSkinEdit9: TbsSkinEdit;
    bsSkinLabel10: TbsSkinLabel;
    bsSkinEdit10: TbsSkinEdit;
    bsSkinLabel11: TbsSkinLabel;
    bsSkinEdit11: TbsSkinEdit;
    bsSkinLabel12: TbsSkinLabel;
    bsSkinEdit12: TbsSkinEdit;
    bsSkinLabel13: TbsSkinLabel;
    bsSkinEdit13: TbsSkinEdit;
    bsSkinLabel14: TbsSkinLabel;
    bsSkinEdit14: TbsSkinEdit;
    bsSkinLabel15: TbsSkinLabel;
    bsSkinEdit15: TbsSkinEdit;
    bsSkinLabel16: TbsSkinLabel;
    bsSkinEdit16: TbsSkinEdit;
    bsSkinLabel17: TbsSkinLabel;
    bsSkinEdit17: TbsSkinEdit;
    bsSkinLabel18: TbsSkinLabel;
    bsSkinComboBox1: TbsSkinComboBox;
    bsSkinLabel19: TbsSkinLabel;
    bsSkinDateEdit1: TbsSkinDateEdit;
    bsSkinTimeEdit1: TbsSkinTimeEdit;
    bsSkinMessage1: TbsSkinMessage;
    bsSkinPanel3: TbsSkinPanel;
    bsSkinLabel20: TbsSkinLabel;
    bsSkinLabel21: TbsSkinLabel;
    bsSkinLabel22: TbsSkinLabel;
    bsSkinXFormButton9: TbsSkinXFormButton;
    procedure FormCreate(Sender: TObject);
    procedure screencls(sender:tobject);
    procedure bsSkinXFormButton2Click(Sender: TObject);
    procedure bsSkinEdit1KeyPress(Sender: TObject; var Key: Char);
    procedure bsSkinXFormButton3Click(Sender: TObject);
    procedure bsSkinEdit7Exit(Sender: TObject);
    procedure bsSkinEdit17Exit(Sender: TObject);
    procedure bsSkinXFormButton4Click(Sender: TObject);
    procedure bsSkinXFormButton5Click(Sender: TObject);
    procedure bsSkinXFormButton9Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  khsj: Tkhsj;

implementation
   uses globe,dm_un,main_un,del_money_un,khdprn_un;
{$R *.dfm}

procedure Tkhsj.FormCreate(Sender: TObject);
var
 i:integer;
begin
  inherited;
  bsskinedit1.ImeName:=system_ime;
  bsskinedit3.ImeName:=system_ime;
  bsskinedit4.ImeName:=system_ime;
  bsskinedit9.ImeName:=system_ime;
  bsskinedit12.ImeName:=system_ime;
  bsskinedit14.ImeName:=system_ime;
  bsskinedit15.ImeName:=system_ime;
  bsskinedit16.ImeName:=system_ime;
  bsskindateedit1.Date:=now;
  bsskincombobox1.ItemIndex :=-1;
  dm:=tdm.Create(nil);
  with dm do
   begin
    q_a.Close;
    q_a.SQL.Clear;
    q_a.SQL.Add('select * from TEL_CGYW');
    q_a.Prepared;
    q_a.Open;
   end;
  if dm.q_a.Recordset.RecordCount >0 then
   begin
    bsskinchecklistbox1.Clear;
     dm.q_a.First;
     while not dm.q_a.Eof do
      begin
        bsskinchecklistbox1.Items.Add(dm.q_a.FieldValues['yw_id']+'             '+dm.q_a.FieldValues['YW_NAME']+'                 '+floattostr(dm.q_a.FieldValues['YW_money']));
        dm.q_a.Next;
      end;
   end;
  bsskinedit16.Text:=user_name;
  bsskinedit15.Text:=system_dw;
end;

procedure Tkhsj.bsSkinXFormButton2Click(Sender: TObject);
begin
  inherited;
 close;
end;

procedure Tkhsj.bsSkinEdit1KeyPress(Sender: TObject; var Key: Char);
begin
  inherited;
 if key=#13 then
  begin
   key:=#0;
   postmessage(handle,WM_KEYDOWN,VK_TAB,0);
  end;
end;
procedure tkhsj.screencls(sender:tobject);
var
 i:integer;
begin
  bsskinedit1.Clear;
  bsskinedit2.Clear;
  bsskinedit3.Clear;
  bsskinedit4.Clear;
  bsskinedit5.Clear;
  bsskinedit6.Clear;
  bsskinedit7.Clear;
  bsskinedit8.Clear;
  bsskinedit9.Clear;
  bsskinedit10.Clear;
  bsskinedit11.Clear;
  bsskinedit12.Clear;
  bsskinedit13.Clear;
  bsskinedit14.Clear;
  bsskinedit15.Clear;
  bsskinedit16.Clear;
  bsskinedit17.Clear;
  bsskindateedit1.Date:=now;
  bsskintimeedit1.Time:='00:00:00';
  for i:=0 to bsskinchecklistbox1.Items.count-1 do
   begin
    bsskinchecklistbox1.Checked[i]:=false;
   end;
   bsskincombobox1.ItemIndex :=-1;
   bsskinedit16.Text:=user_name;
   bsskinedit15.Text:=system_dw;
end;
procedure Tkhsj.bsSkinXFormButton3Click(Sender: TObject);
begin
  inherited;
 if bsskinmessage1.MessageDlg('你是否确定增加新的用户?',mtconfirmation,[mbyes,mbcancel],0)=mryes then
  begin
   screencls(nil);
   bsskinedit1.SetFocus;
  end;
end;

procedure Tkhsj.bsSkinEdit7Exit(Sender: TObject);
begin
  inherited;
  if length(bsskinedit7.Text)<15 then
   begin
    bsskinmessage1.MessageDlg('身份证号输入可能有误,应为15位或者是18位',mterror,[mbyes],0);
    bsskinedit7.SetFocus;
   end;
  if length(bsskinedit7.Text)>18 then
   begin
    bsskinmessage1.MessageDlg('身份证号输入可能有误,应为15位或者是18位',mterror,[mbyes],0);
    bsskinedit7.SetFocus; 
   end;
end;

procedure Tkhsj.bsSkinEdit17Exit(Sender: TObject);
var
 i:integer;
begin
  inherited;
 dm:=tdm.Create(nil);
 if length(trim(bsskinedit17.Text))<>7 then
  begin
   bsskinmessage1.MessageDlg('电话号码长度有误!,请重新录入。',mterror,[mbok],0);
   bsskinedit17.Clear;
   bsskinedit17.SetFocus;
  end;
 for i:=1 to length(trim(bsskinedit17.Text)) do
  begin
    if pos(copy(trim(bsskinedit17.Text),i,1),'0123456789')=0 then
     begin
       bsskinmessage1.MessageDlg('电话号码含有非法字符!,请重新录入。',mterror,[mbok],0);
       bsskinedit17.Clear;
       bsskinedit17.SetFocus;
       exit;
     end;
  end;
 with dm do
  begin
   q_a.Close;
   q_a.SQL.Clear;
   q_a.SQL.Add('select tel_name,tel_sfzh,tel_num from tel_user where tel_num=:tel_num');
   q_a.Parameters.ParamByName('tel_num').Value:=trim(bsskinedit17.Text);
   q_a.Prepared;
   q_a.Open;
  end;
 if dm.q_a.Recordset.RecordCount >0 then
  begin
   bsskinmessage1.MessageDlg('号码重复错误,请选择其它的号码.该号码的信息为:'+CHR(13)+
                            '用户名为:'+dm.q_a.FieldValues['tel_name']+chr(13)+
                            '用户身份证号为:'+dm.q_a.FieldValues['tel_sfzh'],mterror,[mbyes],0 );
   bsskinedit17.Text:='';
   bsskinedit17.SetFocus;
  end;
end;

procedure Tkhsj.bsSkinXFormButton4Click(Sender: TObject);
var
 fw_tmp:string;
 i:integer;
 del_money:tdel_money;
 khdprn:tkhdprn;
begin
  inherited;
   fw_tmp:='';
     for i:=0 to bsskinchecklistbox1.Items.count-1 do
      begin
       if bsskinchecklistbox1.Checked[i] then
        fw_tmp:=fw_tmp+copy(trim(bsskinchecklistbox1.Items.Strings[i] ),1,1);
      end;
  if trim(fw_tmp)='' then
    begin
    bsskinmessage1.MessageDlg('用户服务项目选择不能为空!!',mterror,[mbok],0);
    bsskinchecklistbox1.SetFocus;
    exit;
    end;
  if trim(bsskinedit1.Text)='' then
   begin
    bsskinmessage1.MessageDlg('用户名不能为空!!',mterror,[mbok],0);
    bsskinedit1.SetFocus;
    exit;
   end;
  if trim(bsskinedit3.Text)='' then
   begin
    bsskinmessage1.MessageDlg('用户工作单位不能为空!!',mterror,[mbok],0);
    bsskinedit3.SetFocus;
    exit;
   end;
   if trim(bsskinedit7.Text)='' then
   begin
    bsskinmessage1.MessageDlg('用户身份证号不能为空!!',mterror,[mbok],0);
    bsskinedit7.SetFocus;
    exit;
   end;
   if trim(bsskinedit4.Text)='' then
   begin
    bsskinmessage1.MessageDlg('用户现住址不能为空!!',mterror,[mbok],0);
    bsskinedit4.SetFocus;
    exit;
   end;
{   if trim(bsskinedit9.Text)='' then
   begin
    bsskinmessage1.MessageDlg('担保人姓名不能为空!!',mterror,[mbok],0);
    bsskinedit9.SetFocus;
    exit;
   end;
   if trim(bsskinedit13.Text)='' then
   begin
    bsskinmessage1.MessageDlg('担保人身份证号不能为空!!',mterror,[mbok],0);
    bsskinedit13.SetFocus;
    exit;
   end;
   if trim(bsskinedit10.Text)='' then
   begin
    bsskinmessage1.MessageDlg('担保人联系电话不能为空!!',mterror,[mbok],0);
    bsskinedit10.SetFocus;
    exit;
   end;  }
   if trim(bsskinedit15.Text)='' then
   begin
    bsskinmessage1.MessageDlg('入网地址不能为空!!',mterror,[mbok],0);
    bsskinedit15.SetFocus;
    exit;
   end;
   if trim(bsskinedit16.Text)='' then
   begin
    bsskinmessage1.MessageDlg('受理人姓名不能为空!!',mterror,[mbok],0);
    bsskinedit16.SetFocus;
    exit;
   end;
   if trim(bsskinedit17.Text)='' then
   begin
    bsskinmessage1.MessageDlg('用户办理的电话号码不能为空!!',mterror,[mbok],0);
    bsskinedit17.SetFocus;
    exit;
   end;
   if bsskincombobox1.ItemIndex =-1 then
   begin
     bsskinmessage1.MessageDlg('付费方式不能为空!!',mterror,[mbok],0);
     bsskincombobox1.SetFocus;
     exit;
   end;
  if bsskinmessage1.MessageDlg('你是否确定保存当前的用户数据?',mtconfirmation,[mbok,mbcancel],0)=mrok then
   begin
      dm:=tdm.Create(nil);
      with dm do
       begin
        q_a.Close;
        q_a.SQL.Clear;
        q_a.SQL.Add('insert into tel_user (');
        q_a.SQL.Add('tel_name,tel_pass,tel_dw,tel_sfzh,');
        q_a.SQL.Add('tel_zz,tel_zztel,tel_dwtel,tel_qtfs,tel_fffs,');
        q_a.SQL.Add('tel_fw,dbr_name,dbr_sfzh,dbr_tel1,');
        q_a.SQL.Add('dbr_tel2,dbr_lxdz,dbr_gzdw,tel_rwdz,tel_num,');
        q_a.SQL.Add('tel_slr,user_id,tel_time,user_time,yw_stut)');
        q_a.SQL.Add('values(:tel_name,:tel_pass,:tel_dw,:tel_sfzh,');
        q_a.SQL.Add(':tel_zz,:tel_zztel,:tel_dwtel,:tel_qtfs,:tel_fffs,');
        q_a.SQL.Add(':tel_fw,:dbr_name,:dbr_sfzh,:dbr_tel1,');
        q_a.SQL.Add(':dbr_tel2,:dbr_lxdz,:dbr_gzdw,:tel_rwdz,:tel_num,');
        q_a.SQL.Add(':tel_slr,:user_id,:tel_time,:user_time,:yw_stut)');
        q_a.Parameters.ParamByName('tel_name').Value :=trim(bsskinedit1.Text) ;
        q_a.Parameters.ParamByName('tel_pass').Value :=trim(bsskinedit8.Text) ;
        q_a.Parameters.ParamByName('tel_dw').Value :=trim(bsskinedit3.Text) ;
        q_a.Parameters.ParamByName('tel_sfzh').Value :=trim(bsskinedit7.Text) ;
        q_a.Parameters.ParamByName('tel_zz').Value :=trim(bsskinedit4.Text) ;
        q_a.Parameters.ParamByName('tel_zztel').Value :=trim(bsskinedit6.Text) ;
        q_a.Parameters.ParamByName('tel_dwtel').Value :=trim(bsskinedit5.Text) ;
        q_a.Parameters.ParamByName('tel_qtfs').Value :=trim(bsskinedit2.Text) ;
        q_a.Parameters.ParamByName('tel_fffs').Value :=trim(inttostr(bsskincombobox1.ItemIndex+1)) ;
        q_a.Parameters.ParamByName('tel_fw').Value :=fw_tmp;
     //   q_a.Parameters.ParamByName('tel_ycfs').Value :=0.00;
        q_a.Parameters.ParamByName('dbr_name').Value :=trim(bsskinedit9.Text) ;
        q_a.Parameters.ParamByName('dbr_sfzh').Value :=trim(bsskinedit13.Text) ;
        q_a.Parameters.ParamByName('dbr_tel1').Value :=trim(bsskinedit10.Text) ;
        q_a.Parameters.ParamByName('dbr_tel2').Value :=trim(bsskinedit11.Text) ;
        q_a.Parameters.ParamByName('dbr_lxdz').Value :=trim(bsskinedit12.Text) ;
        q_a.Parameters.ParamByName('dbr_gzdw').Value :=trim(bsskinedit14.Text) ;
        q_a.Parameters.ParamByName('tel_rwdz').Value :=trim(bsskinedit15.Text) ;
        q_a.Parameters.ParamByName('tel_num').Value :=trim(bsskinedit17.Text) ;
        q_a.Parameters.ParamByName('tel_slr').Value :=trim(bsskinedit16.Text) ;
        q_a.Parameters.ParamByName('user_id').Value :=user_id ;
        q_a.Parameters.ParamByName('tel_time').Value :=strtodatetime(bsskindateedit1.text);
        q_a.Parameters.ParamByName('user_time').Value :=now ;
        q_a.Parameters.ParamByName('yw_stut').Value :='1';
        q_a.Prepared;
      //  q_a.Last;
        q_a.ExecSQL;
        writetolog('0.00');
       end;
        dm.Free;
        khdprn:=tkhdprn.Create(khsj);
        khdprn.loadkhd(trim(bsskinedit17.Text));
        khdprn.QuickRep1.Prepare;
        khdprn.QuickRep1.Preview;
        khdprn.Free;
        if  bsskinmessage1.MessageDlg('用户信息保存完毕!!是否操作用户的开户费信息?',mtconfirmation,[mbyes,mbcancel],0)=mryes then
          begin
        //   SYS_OPER:='开户';
           del_money:=tdel_money.Create(khsj);
           del_money.bsSkinEdit12.Text:=bsskinedit17.Text;
           del_money.ShowModal;
           del_money.Free;
          end;
        screencls(nil);
         if sys_oper<>'开户' then close;
        bsskinedit1.SetFocus;
   end
  else
  begin
   if sys_oper<>'开户' then close;
   bsskinedit1.SetFocus;
  end;
end;

procedure Tkhsj.bsSkinXFormButton5Click(Sender: TObject);
var
 del_money:tdel_money;
begin
  inherited;
  SYS_OPER:='开户费';
  del_money:=tdel_money.Create(khsj);
  del_money.bsSkinEdit12.Text:=bsskinedit17.Text ;
  del_money.bsSkinEdit12.Enabled:=false;
  del_money.ShowModal;
  del_money.Free;
end;

procedure Tkhsj.bsSkinXFormButton9Click(Sender: TObject);
var
 khdprn:tkhdprn;
begin
  inherited;
  if bsskinedit17.Text='' then
   begin
    bsskinmessage1.MessageDlg('用户的办理号码不能为空!',mterror,[mbok],0);
    bsskinedit17.SetFocus;
    exit;
   end;
  if telisno(bsskinedit17.Text) then
    begin
        khdprn:=tkhdprn.Create(khsj);
        khdprn.loadkhd(bsskinedit17.Text);
        khdprn.QuickRep1.Prepare;
        khdprn.QuickRep1.Preview;
    end
  else
   begin
    bsskinmessage1.MessageDlg('用户号码不存在!',mterror,[mbok],0);
    bsskinedit17.SetFocus;
    exit;
   end;

end;

end.

⌨️ 快捷键说明

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