📄 customerw.java
字号:
jContentPane.add(label1, null);
jContentPane.add(getJButton2(), null);
jContentPane.add(getJTextField(), null);
jContentPane.add(getJButton3(), null);
jContentPane.add(getJComboBox(), null);
jContentPane.add(getJComboBox1(), null);
jContentPane.add(label3, null);
jContentPane.add(jLabel1, null);
jContentPane.add(jLabel2, null);
jContentPane.add(getJTextArea(), null);
}
return jContentPane;
}
/**
* This method initializes jButton
*
* @return javax.swing.JButton
*/
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButton.setIcon(new ImageIcon(getClass().getResource("/Barber/5.jpg")));
jButton.setBounds(new Rectangle(127, 223, 113, 27));
jButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
writedata(datafile);
writedata_customer(customer,"customer.txt");
writedata_customer(customer_1,"customer1.txt");
writedata_customer(customer_2,"customer2.txt");
writedata_customer(customer_3,"customer3.txt");
writedata_barber("barber2.txt");
setVisible(false);
if(customerinfo==null)
{
customerinfo=new Customerinfo();
customerinfo.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
customerinfo.setVisible(true);
}
}
});
}
return jButton;
}
/**
* This method initializes jButton1
*
* @return javax.swing.JButton
*/
private JButton getJButton1() {
if (jButton1 == null) {
jButton1 = new JButton();
jButton1.setIcon(new ImageIcon(getClass().getResource("/Barber/1.jpg")));
jButton1.setBounds(new Rectangle(377, 224, 111, 24));
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
writedata(datafile);
writedata_customer(customer,"customer.txt");
writedata_customer(customer_1,"customer1.txt");
writedata_customer(customer_2,"customer2.txt");
writedata_customer(customer_3,"customer3.txt");
writedata_barber("barber2.txt");
setVisible(false);
if(mainpage==null)
{
mainpage=new Mainpage();
mainpage.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainpage.setVisible(true);
}
}
});
}
return jButton1;
}
/**
* This method initializes jButton2
*
* @return javax.swing.JButton
*/
private JButton getJButton2() {
if (jButton2 == null) {
jButton2 = new JButton();
jButton2.addActionListener(new NewCustomer());
jButton2.setBounds(new Rectangle(2, 224, 109, 26));
jButton2.setIcon(new ImageIcon(getClass().getResource("/Barber/2.jpg")));
jButton2.setText("");
}
return jButton2;
}
/**
* This method initializes jTextField
*
* @return javax.swing.JTextField
*/
private JTextField getJTextField() {
if (jTextField == null) {
jTextField = new JTextField();
jTextField.setBounds(new Rectangle(299, 32, 151, 25));
}
return jTextField;
}
/**
* This method initializes jButton3
*
* @return javax.swing.JButton
*/
private JButton getJButton3() {
if (jButton3 == null) {
jButton3 = new JButton();
jButton3.setBounds(new Rectangle(255, 224, 110, 26));
jButton3.setIcon(new ImageIcon(getClass().getResource("/Barber/4.jpg")));
jButton3.addActionListener(new CustomerLeave());
}
return jButton3;
}
/**
* This method initializes jComboBox
*
* @return javax.swing.JComboBox
*/
private JComboBox getJComboBox() {
if (jComboBox == null) {
jComboBox = new JComboBox();
jComboBox.setBounds(new Rectangle(299, 99, 152, 21));
jComboBox.addItem("理发");
jComboBox.addItem("干洗");jComboBox.addItem("日式洗发");jComboBox.addItem("泰式洗发");
jComboBox.addItem("盘发");jComboBox.addItem("焗油");
jComboBox.addItem("接发");
jComboBox.addItem("烫发");
jComboBox.addItem("染发");
jComboBox.addItem("造型设计");
}
return jComboBox;
}
/**
* This method initializes jComboBox1
*
* @return javax.swing.JComboBox
*/
private JComboBox getJComboBox1() {
if (jComboBox1 == null) {
jComboBox1 = new JComboBox();
jComboBox1.setBounds(new Rectangle(300, 162, 152, 21));
jComboBox1.addItem("一级理发师");jComboBox1.addItem("二级理发师");jComboBox1.addItem("三级理发师");
}
return jComboBox1;
}
/**
* This method initializes jComboBox2
*
* @return javax.swing.JComboBox
*/
private class NewCustomer implements ActionListener //这是新增顾客的类
{
private int grade=0;
private String customer_id;
private long in_time; //顾客开始时间
private long start_time; //顾客进店时间
private int service_id;
public void actionPerformed(ActionEvent event)
{
addNew();
writedata(datafile);
writedata_customer(customer,"customer.txt");
writedata_customer(customer_1,"customer1.txt");
writedata_customer(customer_2,"customer2.txt");
writedata_customer(customer_3,"customer3.txt");
writedata_barber("barber2.txt");
}
public void addNew()//需要修改
{
customer_total_num++;
grade=jComboBox1.getSelectedIndex()+1;
if(grade==0)
{
grade=1;
}
service_id=jComboBox.getSelectedIndex();
if(service_id==-1)
{
service_id=0;
}
customer_id=jTextField.getText();
if(customer_id.equals(""))
{
JOptionPane.showMessageDialog(null,"请输入顾客id!");
return ;
}
for(int gggg=0;gggg<200;gggg++)
{
if(customer[gggg].getId().equals(customer_id)==true)
{
JOptionPane.showMessageDialog(null,"该顾客id已经存在了!");
return;
}
}
in_time=Calendar.getInstance().getTimeInMillis();
Customer new_customer=new Customer(customer_id,grade,service_id,in_time);
int i;
for(i=0;i<50;i++) //查找是否有理发师符合条件
{
int[] service_int=new int[10];
for(int j=0;j<10;j++)
{
service_int[j]=barber[i].getService(j);//获得该理发师能够进行的项目
}
if(service_int[service_id]==1&&barber[i].getGrade()==grade&&(!barber[i].isState()))//表示可以进行这些服务
{
new_customer.setBarber_id(barber[i].getId());
start_time=Calendar.getInstance().getTimeInMillis();
new_customer.setStart_time(start_time);
int kkkk;//用于标志
for(kkkk=0;kkkk<200&&customer[kkkk].getGrade()!=0;kkkk++){}//grade为0表示还没有该顾客
if(kkkk==200)
{
JOptionPane.showMessageDialog(null,"顾客总数已经满了!");
return;
}
new_customer.setState(true);
barber[i].setState(true);
customer[kkkk]=new_customer;
if(grade==1)
{
total_money+=service[customer[kkkk].getService()].getService_1_money();
grade1_money+=service[customer[kkkk].getService()].getService_1_money();
}
else if(grade==2)
{
total_money+=service[customer[kkkk].getService()].getService_2_money();
grade2_money+=service[customer[kkkk].getService()].getService_2_money();
}
else if(grade==3)
{
total_money+=service[customer[kkkk].getService()].getService_3_money();
grade3_money+=service[customer[kkkk].getService()].getService_3_money();
}
JOptionPane.showMessageDialog(null,"请到"+barber[i].getName()+"去理发!");
return;//有理发师能够进行该项目,退出循环
}
}
if(i==50)//没有找到,去排队吧
{
int kkkk;//用于标志
for(kkkk=0;kkkk<200&&customer[kkkk].getGrade()!=0;kkkk++){}//grade为0表示还没有该顾客
new_customer.setState(false);
if(kkkk==200)
{
JOptionPane.showMessageDialog(null,"顾客总数已经满了!");
return ;
}
customer[kkkk]=new_customer;
if(grade==1)
{
new_customer.setState(false);
int j=0;
for(j=0;j<200&&customer_1[j].getGrade()!=0;j++){}
if(j<200)
{
customer_total_queue=customer_total_queue+j+1;//增加顾客排队总长度
customer_1[j]=new_customer;
JOptionPane.showMessageDialog(null,"满足你条件的理发师正忙,请等待!");
return;
}
else
{
JOptionPane.showMessageDialog(null,"一等服务人数已满!");
return;
}
}
else if(grade==3)
{
new_customer.setState(false);
int j=0;
for(j=0;j<200&&customer_3[j].getGrade()!=0;j++){}
if(j<200)
{
customer_total_queue=customer_total_queue+j+1;//增加顾客排队总长度
customer_3[j]=new_customer;
JOptionPane.showMessageDialog(null,"满足你条件的理发师正忙,请等待!");
return;
}
else
{
JOptionPane.showMessageDialog(null,"三等服务人数已满!");
return;
}
}
else if(grade==2)
{
new_customer.setState(false);
int j=0;
for(j=0;j<200&&customer_2[j].getGrade()!=0;j++){}
if(j<200)
{
customer_total_queue=customer_total_queue+j+1;//增加顾客排队总长度
customer_2[j]=new_customer;
JOptionPane.showMessageDialog(null,"满足你条件的理发师正忙,请等待!");
return;
}
else
{
JOptionPane.showMessageDialog(null,"二等服务人数已满!");
return;
}
}
else
{
JOptionPane.showMessageDialog(null,"等级选择错误!");
return;
}
}
}
}
private void writedata_customer(Customer[] customer1,String filename)
{
try
{
PrintWriter out = new PrintWriter(new FileWriter(filename));
for(int i=0;i<200&&customer1[i].getGrade()!=0;i++)
{
if(customer1[i].getBarber_id()=="未指定")
customer1[i].setBarber_id("未指定");
out.println(customer1[i].getBarber_id() + ","+customer1[i].getEnd_time()+","+customer1[i].getIn_time()+","+customer1[i].getOut_time()+","+customer1[i].getStart_time()+"," +customer1[i].isState()+","+customer1[i].getDouliu() + "," +customer1[i].getGrade()+","+customer1[i].getId()+","+customer1[i].getService()+","+customer1[i].getWait());
}
out.close();
}
catch(IOException e0)
{
JOptionPane.showMessageDialog(null,"写数据错误!程序即将结束!");
System.exit(0);
}
}
private void writedata_barber(String filename)
{
try
{
PrintWriter out = new PrintWriter(new FileWriter(filename));
for(int i=0;i<50&&barber[i].getGrade()!=0;i++)
{
String barberstring;
barberstring=barber[i].getId() + ","+barber[i].getName()+","+barber[i].getGrade();
for(int aaa=0;aaa<10;aaa++)
barberstring=barberstring+","+barber[i].getService(aaa);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -