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

📄 unit_dictionary.pas

📁 用delphi开发的美容院管理系统
💻 PAS
📖 第 1 页 / 共 5 页
字号:
end;

procedure Tfrm_dictionary.MakeCusTypeEnabled(temp:boolean);
begin
  if sbtn_append.Enabled then
     sbtn_save.Enabled :=true
  else
     sbtn_save.Enabled :=false;
  sbtn_delete.Enabled  :=false;

  edt_Custypeid.Enabled :=temp;
  edt_Custypename.Enabled :=temp;
  edt_Custyperemark.Enabled :=temp;
end;
 
function Tfrm_dictionary.SaveCusTypeInfo():boolean;
begin
  result := true;
  if trim(edt_CusTypename.Text)='' then
  begin
    Messagebox(handle,'请输入客户类别名称!','提示',mb_ok+mb_iconinformation);
    result:=false;
    edt_CusTypename.SetFocus ;
    exit;
  end;
  
  CusTypeid:=trim(edt_Custypeid.Text );
  if CusTypeAppendOrEdit then //如果是新增加员工类别
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id from CustomerType where type_id=:typeid';
    ParamByName('typeid').AsString := EmpTypeid;
    Open;
    if not eof then  //如果员工编号已经存在
    begin
      MessageBox(self.handle,'该客户类别编号已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_EmpTypeid.SetFocus ;
      result:=false;
      exit;
    end;
  end;
  
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id from CustomerType where type_name=:typename';
    ParamByname('typename').AsString := trim(edt_CusTypename.Text);
    open;
    if not eof then
    if FieldByName('type_id').AsString <> Custypeid then
    begin
      MessageBox(self.Handle ,'该员工姓名已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_CusTypename.SetFocus ;
      result := false;
      exit;
    end;
  end;
  
  try
    dmod.Database.StartTransaction ;
    with dmod.qrydata do
    begin
      close;
      SQL.Text := 'delete from CustomerType where type_id=:typeid';
      ParamByName('typeid').AsString := CusTypeId;
      ExecSQL;

      close;
      SQL.Text := 'insert into CustomerType(type_id,type_name,type_remark) values(:typeid,:typename,:typeremark)';
      ParamByName('typeid').AsString := trim(edt_Custypeid.Text );
      ParamByName('typename').AsString := trim(edt_Custypename.Text );
      ParamByName('typeremark').AsString := trim(edt_Custyperemark.Text );
      ExecSQL;
    end;
  finally
    try
      dmod.Database.Commit ;
    except
      dmod.Database.Rollback ;
      MessageBox(handle,'操作失败,请重试!','提示',mb_ok+mb_iconinformation);
      result:=false;
    end;
  end;
end;
{***********************CustomerType**************************}

{***********************ServiceItemType***********************}
procedure Tfrm_dictionary.ServiceItemType_ref ;
begin
  with sg_SerType do
  begin
    cells[0,0] := '序号';
    cells[1,0] := '服务类别';
    cells[2,0] := '服务描述';
  end;
  SearchServiceItemTypeInfo();
end;

procedure Tfrm_dictionary.SearchServiceItemTypeInfo();
var
  i:integer;
begin
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id,type_name,type_remark from ServiceItemType';
    Open;
    i:=1;
    while not eof do
    begin
      sg_SerType.Cells[0,i] := FieldByName('type_id').AsString ;
      sg_SerType.Cells[1,i] := FieldByName('type_name').AsString ;
      sg_SerType.Cells[2,i] := FieldbyName('type_remark').AsString ;
      inc(i);
      next;
    end;
  end;
  if i<>1 then sg_SerType.RowCount := i+1;
  sbtn_front.Enabled := false;
  sbtn_back.Enabled  := false;
  if sg_SerType.RowCount >3 then sbtn_back.Enabled := true;
end;

procedure Tfrm_dictionary.ClearServiceItemTypeInfo ();
begin
  edt_SerTypeid.Text :='';
  edt_SerTypename.Text :='';
  edt_Sertyperemark.Text :='';
end;

procedure Tfrm_dictionary.MakeServiceItemTypeEnabled(temp:boolean);
begin
  if sbtn_append.enabled then
     sbtn_save.Enabled :=true
  else
     sbtn_save.Enabled :=false;
  sbtn_delete.Enabled  :=false;
  edt_SerTypeid.Enabled :=temp;
  edt_Sertypename.Enabled :=temp;
  edt_Sertyperemark.Enabled :=temp;
end;

function Tfrm_dictionary.SaveServiceItemTypeInfo ():boolean;
begin
  result := true;
  if trim(edt_SerTypename.Text)='' then
  begin
    Messagebox(handle,'请输入员工类别名称!','提示',mb_ok+mb_iconinformation);
    result:=false;
    edt_SerTypename.SetFocus ;
    exit;
  end;
  
  SerTypeid:=trim(edt_Sertypeid.Text );
  if SerTypeAppendOrEdit then //如果是新增加员工类别
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id from ServiceItemType where type_id=:typeid';
    ParamByName('typeid').AsString := SerTypeid;
    Open;
    if not eof then  //如果员工编号已经存在
    begin
      MessageBox(self.handle,'该员工类别编号已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_SerTypeid.SetFocus ;
      result:=false;
      exit;
    end;
  end;
  
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id from ServiceItemType where type_name=:typename';
    ParamByname('typename').AsString := trim(edt_SerTypename.Text);
    open;
    if not eof then
    if FieldByName('type_id').AsString <> Sertypeid then
    begin
      MessageBox(self.Handle ,'该员工姓名已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_SerTypename.SetFocus ;
      result := false;
      exit;
    end;
  end;
  
  try
    dmod.Database.StartTransaction ;
    with dmod.qrydata do
    begin
      close;
      SQL.Text := 'delete from ServiceItemType where type_id=:typeid';
      ParamByName('typeid').AsString := SerTypeId;
      ExecSQL;

      close;
      SQL.Text := 'insert into ServiceItemType(type_id,type_name,type_remark) values(:typeid,:typename,:typeremark)';
      ParamByName('typeid').AsString := trim(edt_Sertypeid.Text );
      ParamByName('typename').AsString := trim(edt_Sertypename.Text );
      ParamByName('typeremark').AsString := trim(edt_Sertyperemark.Text );
      ExecSQL;
    end;
  finally
    try
      dmod.Database.Commit ;
    except
      dmod.Database.Rollback ;
      MessageBox(handle,'操作失败,请重试!','提示',mb_ok+mb_iconinformation);
      result:=false;
    end;
  end;
end;
{***********************ServiceItemType***********************}

{***********************ServiceItem******************************}
procedure Tfrm_dictionary.ServiceItem_ref ;
begin
  with sg_ItemType do
  begin
    cells[0,0] := '项目序号';
    cells[1,0] := '项目名称';
    cells[2,0] := '服务类别';
    cells[3,0] := '项目价格';
    cells[4,0] := '项目描述';
  end;
  SearchServiceItemInfo();
end;

procedure Tfrm_dictionary.SearchServiceItemInfo();
var
  i:integer;
begin
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select item_id,item_name,service_type_id,service_type_name,item_price,item_remark from ServiceItem';
    Open;
    i:=1;
    while not eof do
    begin
      sg_ItemType.Cells[0,i] := FieldByName('item_id').AsString ;
      sg_ItemType.Cells[1,i] := FieldByName('item_name').AsString ;
      sg_ItemType.Cells[2,i] := FieldbyName('service_type_id').AsString +'-'+ FieldbyName('service_type_name').AsString ;
      sg_ItemType.Cells[3,i] := FloatToStr(FieldByName('item_price').AsFloat);
      sg_ItemType.Cells[4,i] := FieldByName('item_remark').AsString ;
      inc(i);
      next;
    end;
  end;
  if i<>1 then sg_ItemType.RowCount := i+1;
  sbtn_front.Enabled := false;
  sbtn_back.Enabled  := false;
  if sg_ItemType.RowCount >3 then sbtn_back.Enabled := true;
end;

procedure Tfrm_dictionary.ClearServiceItemInfo ();
begin
  edt_ItemTypeid.Text :='';
  edt_ItemTypename.Text :='';
  cbb_SerType.Text :='';
  edt_ItemTypePrice.Text :='';
  edt_Itemtyperemark.Text :='';
end;

procedure Tfrm_dictionary.MakeServiceItemEnabled(temp:boolean);
begin
  if sbtn_append.enabled then
     sbtn_save.Enabled :=true
  else
     sbtn_save.Enabled :=false;
  sbtn_delete.Enabled  :=false;
  edt_ItemTypeid.Enabled :=temp;
  edt_Itemtypename.Enabled :=temp;
  cbb_SerType.Enabled :=temp;
  edt_ItemTypePrice.Enabled :=temp;
  edt_Itemtyperemark.Enabled :=temp;
end;

function Tfrm_dictionary.SaveServiceItemInfo ():boolean;
var
   servicetypeid,servicetypename:string;
begin
  result := true;
  if trim(edt_ItemTypename.Text)='' then
  begin
    Messagebox(handle,'请输入服务项目名称!','提示',mb_ok+mb_iconinformation);
    result:=false;
    edt_ItemTypename.SetFocus ;
    exit;
  end;
  
  ItemTypeid:=trim(edt_Itemtypeid.Text );
  if ItemTypeAppendOrEdit then
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select item_id from ServiceItem where item_id=:itemid';
    ParamByName('itemid').AsString := ItemTypeid;
    Open;
    if not eof then
    begin
      MessageBox(self.handle,'该服务项目编号已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_ItemTypeid.SetFocus ;
      result:=false;
      exit;
    end;
  end;
  
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select item_id from ServiceItem where item_name=:itemname';
    ParamByname('itemname').AsString := trim(edt_ItemTypename.Text);
    open;
    if not eof then
    if FieldByName('item_id').AsString <> Itemtypeid then
    begin
      MessageBox(self.Handle ,'该服务项目名称已经存在,请重新确认!','提示',mb_ok+mb_iconinformation);
      edt_ItemTypename.SetFocus ;
      result := false;
      exit;
    end;
  end;
  
  try
    dmod.Database.StartTransaction ;
    with dmod.qrydata do
    begin
      close;
      SQL.Text := 'delete from ServiceItem where item_id=:itemid';
      ParamByName('itemid').AsString := ItemTypeId;
      ExecSQL;

      close;
      SQL.Text := 'insert into ServiceItem(item_id,item_name,service_type_id,service_type_name,item_price,item_remark) '+
                  'values (:itemid,:itemname,:servicetypeid,:servicetypename,:itemprice,:itemremark)';
      ParamByName('itemid').AsString := trim(edt_itemtypeid.Text );
      ParamByName('itemname').AsString := trim(edt_itemtypename.Text );
      servicetypeid:= copy(trim(cbb_sertype.Text),0,(length(cbb_sertype.Text)-length(strpos(pchar(cbb_sertype.Text),'-'))));
      servicetypename:= copy(trim(cbb_sertype.Text),(length(cbb_sertype.Text)-length(strpos(pchar(cbb_sertype.Text),'-')))+2,length(trim(cbb_sertype.text)));
      ParamByName('servicetypeid').Asstring := servicetypeid;
      ParamByName('servicetypename').AsString := servicetypename;
      ParamByName('itemprice').AsFloat := StrToFloat(trim(edt_ItemTypePrice.Text ));
      ParamByName('itemremark').AsString := trim(edt_itemtyperemark.Text );
      ExecSQL;
    end;
  finally
    try
      dmod.Database.Commit ;
    except
      dmod.Database.Rollback ;
      MessageBox(handle,'操作失败,请重试!','提示',mb_ok+mb_iconinformation);
      result:=false;
    end;
  end;
end;
{***********************ServiceItem******************************}

{***********************ServiceMealType***********************}
procedure Tfrm_dictionary.ServiceMealType_ref ;
begin
  with sg_MealType do
  begin
    cells[0,0] := '类型序号';
    cells[1,0] := '套餐名称';
    cells[2,0] := '套餐描述';
  end;
  SearchServiceMealTypeInfo();
end;

procedure Tfrm_dictionary.SearchServiceMealTypeInfo();
var
  i:integer;
begin
  with dmod.qrydata do
  begin
    close;
    SQL.Text := 'select type_id,type_name,type_remark from ServiceMealType';
    Open;
    i:=1;
    while not eof do
    begin
      sg_MealType.Cells[0,i] := FieldByName('type_id').AsString ;
      sg_MealType.Cells[1,i] := FieldByName('type_name').AsString ;
      sg_MealType.Cells[2,i] := FieldbyName('type_remark').AsString ;
      inc(i);
      next;
    end;
  end;
  if i<>1 then sg_MealType.RowCount := i+1;

⌨️ 快捷键说明

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