예제 #1
0
        //确定
        private void btnOk_Click(object sender, EventArgs e)
        {
            if (btnOk.Text == "读房间")
            {
                m_newSeat = dao.get_seat("text", TextNewRoom.Text);
                if (m_newSeat == null)
                {
                    BathClass.printErrorMsg("房间:" + TextNewRoom.Text + "未定义!");
                    TextNewRoom.SelectAll();
                    return;
                }
                if (m_newSeat.status != SeatStatus.AVILABLE && m_newSeat.status != SeatStatus.PAIED && m_newSeat.status != SeatStatus.RESERVE)
                {
                    BathClass.printErrorMsg("房间号" + roomNumber.Text + "不可用");
                    return;
                }

                btnOk.Text     = "开新房";
                LabelInfo.Text = "请放置新房卡......";

                byte[] buff = new byte[200];

                int hotelId = MConvert <int> .ToTypeOrDefault(IOUtil.get_config_by_key(ConfigKeys.KEY_HOTELID), -1);

                if (hotelId == -1)
                {
                    BathClass.printErrorMsg("未定义酒店标志!");
                    return;
                }

                int rt = RoomProRFL.CardErase(1, hotelId, buff);
                RoomProRFL.Buzzer(1, 40);
                if (rt != 0)
                {
                    BathClass.printErrorMsg("退房失败!");
                    return;
                }
            }
            else if (btnOk.Text == "开新房")
            {
                int    cardNo = 0;
                byte[] buff   = new byte[200];
                //int rt = RoomProRFL.initializeUSB(1);
                string BDate = m_seat.openTime.Value.ToString("yyMMddHHmm");
                string EDate = m_seat.dueTime.Value.ToString("yyMMddHHmm");

                int hotelId = MConvert <int> .ToTypeOrDefault(IOUtil.get_config_by_key(ConfigKeys.KEY_HOTELID), -1);

                if (hotelId == -1)
                {
                    BathClass.printErrorMsg("未定义酒店标志!");
                    return;
                }

                int rt = RoomProRFL.GuestCard(1, hotelId, cardNo, 0, 0, 1, BDate, EDate, m_newSeat.oId, buff);
                RoomProRFL.Buzzer(1, 40);
                if (rt != 0)
                {
                    BathClass.printErrorMsg("开房失败!");
                    return;
                }

                string cmd_str = @"update [Orders] set text='" + m_newSeat.text + "' where systemId='" + m_seat.systemId + "' ";
                cmd_str += @"update [Seat] set systemId='" + m_seat.systemId + "'";
                cmd_str += ",openTime='" + m_seat.openTime.Value.ToString("yyyy-MM-dd HH:mm:ss") +
                           "',openEmployee='" + m_oper + "',chainId='" + m_seat.chainId
                           + "',status=" + (int)m_seat.status + ",ordering='False'"
                           + ",deposit=" + m_seat.deposit + ",depositBank=" + m_seat.depositBank + ",dueTime='" + m_seat.dueTime.Value.ToString("yyyy-MM-dd HH:mm:ss")
                           + "'";

                if (m_seat.name != null && m_seat.name != "")
                {
                    cmd_str += ",name='" + m_seat.name + "'";
                }

                if (m_seat.phone != null && m_seat.phone != "")
                {
                    cmd_str += ",phone='" + m_seat.phone + "'";
                }

                if (m_seat.note != null && m_seat.note != "")
                {
                    cmd_str += ",note='" + m_seat.note + "'";
                }

                cmd_str += " where id=" + m_newSeat.id;
                cmd_str += dao.reset_seat_string() + "text='" + m_seat.text + "')";
                if (!dao.execute_command(cmd_str))
                {
                    BathClass.printErrorMsg("更换手牌失败,请重试!");
                    return;
                }
                this.DialogResult = DialogResult.OK;
                this.Close();
            }
        }
예제 #2
0
        //确定
        private void btnOk_Click(object sender, EventArgs e)
        {
            if (name.Text.Trim() == "")
            {
                BathClass.printErrorMsg("需要输入姓名");
                name.Focus();
                return;
            }

            if (deposit.Text.Trim() == "" && TextBank.Text.Trim() == "")
            {
                BathClass.printErrorMsg("需要输入押金");
                deposit.Focus();
                return;
            }

            var seat = dao.get_seat("text", roomNumber.Text);

            if (seat == null)
            {
                BathClass.printErrorMsg("房间号" + roomNumber.Text + "不存在");
                return;
            }

            if (seat.status != SeatStatus.AVILABLE && seat.status != SeatStatus.PAIED && seat.status != SeatStatus.RESERVE)
            {
                BathClass.printErrorMsg("房间号" + roomNumber.Text + "不可用");
                return;
            }

            if (seat.status == SeatStatus.RESERVE && name.Text != seat.name)
            {
                if (BathClass.printAskMsg("开房客人信息与预定客人信息不一致,是否继续?") != DialogResult.Yes)
                {
                    return;
                }
            }

            if (name.Text == "")
            {
                BathClass.printErrorMsg("需要输入客人姓名!");
                return;
            }

            int cardNo = 0;

            byte[] buff = new byte[200];
            //int rt = RoomProRFL.initializeUSB(1);
            string BDate = DateTime.Now.ToString("yyMMddHHmm");
            string EDate = days.Value.ToString("yyMMddHHmm");

            int hotelId = MConvert <int> .ToTypeOrDefault(IOUtil.get_config_by_key(ConfigKeys.KEY_HOTELID), -1);

            if (hotelId == -1)
            {
                BathClass.printErrorMsg("未定义酒店标志!");
                return;
            }
            //rt = RoomProRFL.ReadCard(1, buff);
            //if (rt != 0)
            //{
            //    BathClass.printErrorMsg("未放置房卡或者房卡异常!");
            //    return;
            //}

            int rt = RoomProRFL.GuestCard(1, hotelId, cardNo, 0, 0, 1, BDate, EDate, seat.oId, buff);

            RoomProRFL.Buzzer(1, 40);
            if (rt != 0)
            {
                BathClass.printErrorMsg("开房失败!");
                return;
            }

            if (seat.status == SeatStatus.PAIED)
            {
                dao.reset_seat("text='" + seat.text + "'");
                //BathClass.reset_seat(seat);
                //dc_new.SubmitChanges();
            }

            string systemId = dao.systemId();

            StringBuilder sb            = new StringBuilder();
            double        money_deposit = MConvert <double> .ToTypeOrDefault(deposit.Text, 0);

            double money_bank = MConvert <double> .ToTypeOrDefault(TextBank.Text, 0);

            sb.Append(@" update [Seat] set openEmployee='");
            sb.Append(LogIn.m_User.id);
            sb.Append("', openTime=getdate(), systemId='");
            sb.Append(systemId);
            sb.Append(@"',chainId='").Append(chainId).Append("',deposit=").Append(money_deposit.ToString()).
            Append(",depositBank=").Append(money_bank.ToString()).Append(",status=2,name='");
            sb.Append(name.Text).Append("'");
            sb.Append(",dueTime='").Append(days.Value.ToString("yyyy-MM-dd HH:mm:ss") + "'");
            if (phone.Text.Trim() != "")
            {
                sb.Append(",phone='").Append(phone.Text.Trim()).Append("'");
            }
            //seat.phone = phone.Text.Trim();
            sb.Append(" where text='").Append(roomNumber.Text).Append("'");
            sb.Append(" insert into [SystemIds](systemId) values('" + systemId + "') ");
            var menu = dao.get_seat_menu(seat.text);

            //SeatType seatType = dc_new.SeatType.FirstOrDefault(x => x.id == seat.typeId);
            //var menu = dc_new.Menu.FirstOrDefault(x => x.id == seatType.menuId);
            if (!CheckZhong.Checked && menu != null)
            {
                sb.Append(@" insert into [Orders](menu, text,systemId,number,money,inputTime,inputEmployee,paid) ");
                sb.Append(@"values('" + menu.name + "','" + seat.text + "','" + systemId + "',1," + menu.price + ",getdate(),'");
                sb.Append(LogIn.m_User.id + "','False')");
            }
            else if (CheckZhong.Checked)
            {
                var zhong_menu = dao.get_Menu("name", "钟点房");
                sb.Append(@" insert into [Orders](menu, text,systemId,number,money,inputTime,inputEmployee,paid) ");
                sb.Append(@"values('" + zhong_menu.name + "','" + seat.text + "','" + systemId + "',1," + zhong_menu.price + ",getdate(),'");
                sb.Append(LogIn.m_User.id + "','False')");
            }

            //dc_new.SubmitChanges();

            if (!dao.execute_command(sb.ToString()))
            {
                BathClass.printErrorMsg("开房失败,请重试!");
                return;
            }

            string now = DateTime.Now.ToString("yyy-MM-dd HH:ss");

            PrintRoomDepositReceipt.Print_DataGridView("押金单客人联", seat, LogIn.m_User.name,
                                                       name.Text, phone.Text, now, days.Value.ToString("yyyy-MM-dd HH:mm"), deposit.Text,
                                                       LogIn.options.companyName);

            PrintRoomDepositReceipt.Print_DataGridView("押金单存根联", seat, LogIn.m_User.name,
                                                       name.Text, phone.Text, now, days.Value.ToString("yyyy-MM-dd HH:mm"), deposit.Text,
                                                       LogIn.options.companyName);
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
예제 #3
0
        //确定
        private void btnOk_Click(object sender, EventArgs e)
        {
            //var seat = dao.get_seat("text", roomNumber.Text);

            int cardNo = 0;

            byte[] buff = new byte[200];
            //int rt = RoomProRFL.initializeUSB(1);
            string BDate = DateTime.Now.ToString("yyMMddHHmm");
            string EDate = days.Value.ToString("yyMMddHHmm");

            int hotelId = MConvert <int> .ToTypeOrDefault(IOUtil.get_config_by_key(ConfigKeys.KEY_HOTELID), -1);

            if (hotelId == -1)
            {
                BathClass.printErrorMsg("未定义酒店标志!");
                return;
            }
            int rt = RoomProRFL.GuestCard(1, hotelId, cardNo, 0, 0, 1, BDate, EDate, m_seat.oId, buff);

            RoomProRFL.Buzzer(1, 40);
            if (rt != 0)
            {
                BathClass.printErrorMsg("开房失败!");
                return;
            }


            double money = MConvert <double> .ToTypeOrDefault(TextDepositOver.Text, 0) +
                           MConvert <double> .ToTypeOrDefault(m_seat.deposit, 0);

            double money_bank = MConvert <double> .ToTypeOrDefault(TextDepositOverBank.Text, 0) +
                                MConvert <double> .ToTypeOrDefault(m_seat.depositBank, 0);

            StringBuilder sb = new StringBuilder();

            sb.Append(@" update [Seat] set openEmployee='");
            sb.Append(LogIn.m_User.id);
            sb.Append("',deposit=").Append(money.ToString()).Append(",depositBank=").Append(money_bank.ToString())
            .Append(",status=2,name='");
            sb.Append(TextName.Text).Append("'");
            sb.Append(",dueTime='").Append(days.Value.ToString("yyyy-MM-dd HH:mm:ss") + "'");
            if (TextPhone.Text.Trim() != "")
            {
                sb.Append(",phone='").Append(TextPhone.Text.Trim()).Append("'");
            }
            sb.Append(" where text='").Append(roomNumber.Text).Append("'");

            if (!dao.execute_command(sb.ToString()))
            {
                BathClass.printErrorMsg("开房失败,请重试!");
                return;
            }

            string now     = DateOpenTime.Value.ToString("yyy-MM-dd HH:ss");
            string dueTime = days.Value.ToString("yyyy-MM-dd HH:mm");

            PrintRoomDepositReceipt.Print_DataGridView("押金单客人联", m_seat, LogIn.m_User.name,
                                                       TextName.Text, TextPhone.Text, now, dueTime, money.ToString(),
                                                       LogIn.options.companyName);

            PrintRoomDepositReceipt.Print_DataGridView("押金单存根联", m_seat, LogIn.m_User.name,
                                                       TextName.Text, TextPhone.Text, now, dueTime, money.ToString(),
                                                       LogIn.options.companyName);
            this.DialogResult = DialogResult.OK;
            this.Close();
        }