frmCheckout1.frm
上传用户:fulizhu2
上传日期:2007-06-21
资源大小:34k
文件大小:16k
源码类别:

酒店行业

开发平台:

Visual Basic

  1. VERSION 5.00
  2. Begin VB.Form frmCheckout1 
  3.    BorderStyle     =   3  'Fixed Dialog
  4.    Caption         =   "结算信息"
  5.    ClientHeight    =   4596
  6.    ClientLeft      =   48
  7.    ClientTop       =   336
  8.    ClientWidth     =   7836
  9.    LinkTopic       =   "Form1"
  10.    MaxButton       =   0   'False
  11.    MinButton       =   0   'False
  12.    ScaleHeight     =   4596
  13.    ScaleWidth      =   7836
  14.    ShowInTaskbar   =   0   'False
  15.    StartUpPosition =   1  'CenterOwner
  16.    Begin VB.Frame Frame2 
  17.       Caption         =   "顾客信息"
  18.       Height          =   2412
  19.       Left            =   3960
  20.       TabIndex        =   19
  21.       Top             =   120
  22.       Width           =   3735
  23.       Begin VB.TextBox txtItem 
  24.          Height          =   270
  25.          Index           =   4
  26.          Left            =   1320
  27.          MaxLength       =   10
  28.          TabIndex        =   8
  29.          Top             =   1920
  30.          Width           =   2172
  31.       End
  32.       Begin VB.TextBox txtItem 
  33.          Height          =   270
  34.          Index           =   3
  35.          Left            =   1320
  36.          MaxLength       =   3
  37.          TabIndex        =   7
  38.          Top             =   1440
  39.          Width           =   1572
  40.       End
  41.       Begin VB.TextBox txtItem 
  42.          Height          =   270
  43.          Index           =   2
  44.          Left            =   1320
  45.          MaxLength       =   10
  46.          TabIndex        =   6
  47.          Top             =   1080
  48.          Width           =   2172
  49.       End
  50.       Begin VB.TextBox txtItem 
  51.          Height          =   270
  52.          Index           =   1
  53.          Left            =   1320
  54.          MaxLength       =   18
  55.          TabIndex        =   5
  56.          Top             =   720
  57.          Width           =   2175
  58.       End
  59.       Begin VB.TextBox txtItem 
  60.          Height          =   270
  61.          Index           =   0
  62.          Left            =   1320
  63.          MaxLength       =   5
  64.          TabIndex        =   4
  65.          Top             =   360
  66.          Width           =   2175
  67.       End
  68.       Begin VB.Label Label2 
  69.          Caption         =   "结  帐  时 间:"
  70.          Height          =   252
  71.          Index           =   2
  72.          Left            =   240
  73.          TabIndex        =   25
  74.          Top             =   1920
  75.          Width           =   972
  76.       End
  77.       Begin VB.Label Label2 
  78.          Caption         =   "顾 客  姓 名:"
  79.          Height          =   255
  80.          Index           =   4
  81.          Left            =   240
  82.          TabIndex        =   24
  83.          Top             =   360
  84.          Width           =   975
  85.       End
  86.       Begin VB.Label Label2 
  87.          Caption         =   "身份证号码:"
  88.          Height          =   255
  89.          Index           =   5
  90.          Left            =   240
  91.          TabIndex        =   23
  92.          Top             =   720
  93.          Width           =   975
  94.       End
  95.       Begin VB.Label Label2 
  96.          Caption         =   "折            扣:"
  97.          Height          =   252
  98.          Index           =   6
  99.          Left            =   240
  100.          TabIndex        =   22
  101.          Top             =   1440
  102.          Width           =   972
  103.       End
  104.       Begin VB.Label Label2 
  105.          Caption         =   "入 住 时 间:"
  106.          Height          =   252
  107.          Index           =   11
  108.          Left            =   240
  109.          TabIndex        =   21
  110.          Top             =   1080
  111.          Width           =   972
  112.       End
  113.       Begin VB.Label Label2 
  114.          Caption         =   "%"
  115.          Height          =   252
  116.          Index           =   8
  117.          Left            =   3120
  118.          TabIndex        =   20
  119.          Top             =   1440
  120.          Width           =   492
  121.       End
  122.    End
  123.    Begin VB.Frame Frame1 
  124.       Caption         =   "客房信息"
  125.       Height          =   2412
  126.       Left            =   120
  127.       TabIndex        =   14
  128.       Top             =   120
  129.       Width           =   3735
  130.       Begin VB.ComboBox cboItem 
  131.          Height          =   288
  132.          Index           =   0
  133.          Left            =   1320
  134.          Style           =   2  'Dropdown List
  135.          TabIndex        =   0
  136.          Top             =   480
  137.          Width           =   2175
  138.       End
  139.       Begin VB.ComboBox cboItem 
  140.          Height          =   288
  141.          Index           =   1
  142.          Left            =   1320
  143.          Style           =   2  'Dropdown List
  144.          TabIndex        =   1
  145.          Top             =   960
  146.          Width           =   2175
  147.       End
  148.       Begin VB.ComboBox cboItem 
  149.          Height          =   288
  150.          Index           =   2
  151.          Left            =   1320
  152.          Style           =   2  'Dropdown List
  153.          TabIndex        =   2
  154.          Top             =   1440
  155.          Width           =   2175
  156.       End
  157.       Begin VB.ComboBox cboItem 
  158.          Height          =   288
  159.          Index           =   3
  160.          Left            =   1320
  161.          Style           =   2  'Dropdown List
  162.          TabIndex        =   3
  163.          Top             =   1920
  164.          Width           =   2175
  165.       End
  166.       Begin VB.Label Label2 
  167.          Caption         =   "客房位置:"
  168.          Height          =   255
  169.          Index           =   16
  170.          Left            =   240
  171.          TabIndex        =   18
  172.          Top             =   1440
  173.          Width           =   975
  174.       End
  175.       Begin VB.Label Label2 
  176.          Caption         =   "客房种类:"
  177.          Height          =   255
  178.          Index           =   1
  179.          Left            =   240
  180.          TabIndex        =   17
  181.          Top             =   960
  182.          Width           =   975
  183.       End
  184.       Begin VB.Label Label2 
  185.          Caption         =   "客房编号:"
  186.          Height          =   255
  187.          Index           =   0
  188.          Left            =   240
  189.          TabIndex        =   16
  190.          Top             =   480
  191.          Width           =   975
  192.       End
  193.       Begin VB.Label Label2 
  194.          Caption         =   "客房单价:"
  195.          Height          =   255
  196.          Index           =   3
  197.          Left            =   240
  198.          TabIndex        =   15
  199.          Top             =   1920
  200.          Width           =   975
  201.       End
  202.    End
  203.    Begin VB.Frame Frame3 
  204.       Caption         =   "备注信息"
  205.       Height          =   1215
  206.       Left            =   120
  207.       TabIndex        =   13
  208.       Top             =   2640
  209.       Width           =   7575
  210.       Begin VB.TextBox txtItem 
  211.          Height          =   840
  212.          Index           =   5
  213.          Left            =   120
  214.          TabIndex        =   9
  215.          Top             =   240
  216.          Width           =   7332
  217.       End
  218.    End
  219.    Begin VB.TextBox txtNo 
  220.       Height          =   270
  221.       Left            =   1320
  222.       TabIndex        =   12
  223.       TabStop         =   0   'False
  224.       Top             =   4080
  225.       Visible         =   0   'False
  226.       Width           =   735
  227.    End
  228.    Begin VB.CommandButton cmdExit 
  229.       Caption         =   "返回 (&X)"
  230.       Height          =   375
  231.       Left            =   4680
  232.       TabIndex        =   11
  233.       Top             =   4080
  234.       Width           =   1215
  235.    End
  236.    Begin VB.CommandButton cmdSave 
  237.       Caption         =   "保存 (&S)"
  238.       Height          =   375
  239.       Left            =   3240
  240.       TabIndex        =   10
  241.       Top             =   4080
  242.       Width           =   1215
  243.    End
  244. End
  245. Attribute VB_Name = "frmCheckout1"
  246. Attribute VB_GlobalNameSpace = False
  247. Attribute VB_Creatable = False
  248. Attribute VB_PredeclaredId = True
  249. Attribute VB_Exposed = False
  250. Option Explicit
  251. '是否改动过记录,ture为改过
  252. Dim mblChange As Boolean
  253. Dim mrc As ADODB.Recordset
  254. Public txtSQL As String
  255. Private Sub cboItem_Change(Index As Integer)
  256.     '有变化设置gblchange
  257.     mblChange = True
  258. End Sub
  259. Private Sub cboItem_Click(Index As Integer)
  260.     Dim sSql As String
  261.     Dim MsgText As String
  262.     Dim mrcc As ADODB.Recordset
  263.     Dim intCount As Integer
  264.     
  265.   
  266.     If gintCmode = 1 Then
  267.         '初始化员工名称和ID
  268.         If Index = 0 Then
  269.             cboItem(1).Enabled = True
  270.             cboItem(2).Enabled = True
  271.             cboItem(3).Enabled = True
  272.             cboItem(1).Clear
  273.             cboItem(2).Clear
  274.             cboItem(3).Clear
  275.             
  276.             
  277.             txtSQL = "select roomNO,roomtype,roomposition,roomprice from rooms where roomNO ='" & Trim(cboItem(0)) & "'"
  278.             Set mrcc = ExecuteSQL(txtSQL, MsgText)
  279.             
  280.             If Not mrcc.EOF Then
  281.                 
  282.                 cboItem(1).AddItem mrcc!roomtype
  283.                 cboItem(2).AddItem mrcc!roomposition
  284.                 cboItem(3).AddItem mrcc!roomprice
  285.                 
  286.                 cboItem(1).Enabled = False
  287.                 cboItem(2).Enabled = False
  288.                 cboItem(3).Enabled = False
  289.                 
  290.                 cboItem(1).ListIndex = 0
  291.                 cboItem(2).ListIndex = 0
  292.                 cboItem(3).ListIndex = 0
  293.                 
  294.                 
  295.                 cmdSave.Enabled = True
  296.             Else
  297.                 MsgBox "没有订房信息!", vbOKOnly + vbExclamation, "警告"
  298.                 cmdSave.Enabled = False
  299.                 Exit Sub
  300.             End If
  301.             mrcc.Close
  302.             
  303.             txtSQL = "select * from bookin where ammount = '0' and roomno = '" & Trim(cboItem(0)) & "'"
  304.             Set mrcc = ExecuteSQL(txtSQL, MsgText)
  305.             If Not mrcc.EOF Then
  306.                 txtNo = mrcc!bookno
  307.                 txtItem(0) = mrcc!customname
  308.                 txtItem(1) = mrcc!customID
  309.                 txtItem(2) = mrcc!indate
  310.                 txtItem(3) = mrcc!discount
  311.                 txtItem(5) = mrcc!inmemo
  312.                 
  313.                 For intCount = 0 To 3
  314.                     txtItem(intCount).Enabled = False
  315.                 Next intCount
  316.                 
  317.                 
  318.             End If
  319.             mrcc.Close
  320.                 
  321.         
  322.         End If
  323.     End If
  324.     Exit Sub
  325.     
  326. End Sub
  327. Private Sub cboItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
  328.     EnterToTab KeyCode
  329.     
  330. End Sub
  331. Private Sub cmdExit_Click()
  332.     If mblChange And cmdSave.Enabled Then
  333.         If MsgBox("保存当前记录的变化吗?", vbOKCancel + vbExclamation, "警告") = vbOK Then
  334.             '保存
  335.             Call cmdSave_Click
  336.         End If
  337.     End If
  338.     Unload Me
  339. End Sub
  340. Private Sub cmdSave_Click()
  341.     Dim intCount As Integer
  342.     Dim sMeg As String
  343.     Dim mrcc As ADODB.Recordset
  344.     Dim MsgText As String
  345.     Dim bYear As Integer
  346.     Dim eYear As Integer
  347.     Dim bDays As Integer
  348.     Dim eDays As Integer
  349.     Dim aDays As Integer
  350.     Dim amMount As Double
  351.     
  352.     
  353.     
  354.     If Trim(txtItem(4) & " ") = "" Then
  355.         MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
  356.         txtItem(4).SetFocus
  357.         Exit Sub
  358.     End If
  359.     
  360.    
  361.     If IsDate(txtItem(4)) Then
  362.         txtItem(4) = Format(txtItem(4), "yyyy-mm-dd")
  363.     Else
  364.         MsgBox "入库时间应输入日期(yyyy-mm-dd)!", vbOKOnly + vbExclamation, "警告"
  365.         txtItem(4).SetFocus
  366.         Exit Sub
  367.     End If
  368.     
  369.     
  370.     '再加入新记录
  371.     txtSQL = "select * from bookin where bookno = '" & Trim(txtNo) & "'"
  372.     Set mrcc = ExecuteSQL(txtSQL, MsgText)
  373.     
  374.     
  375.         
  376.     mrcc.Fields(6) = txtItem(5)
  377.     mrcc.Fields(7) = txtItem(4)
  378.     
  379.     
  380.     bYear = DatePart("yyyy", txtItem(2))
  381.     eYear = DatePart("yyyy", txtItem(4))
  382.     bDays = DatePart("y", txtItem(2))
  383.     eDays = DatePart("y", txtItem(4))
  384.     If bYear = eYear Then
  385.         aDays = eDays - bDays
  386.     Else
  387.         aDays = (eYear - bYear - 1) * 365 + (365 - bDays) + eDays
  388.     End If
  389.     
  390.     mrcc.Fields(8) = aDays * Trim(cboItem(3)) * Trim(txtItem(3)) / 100
  391.     amMount = aDays * Trim(cboItem(3)) * Trim(txtItem(3)) / 100
  392.     
  393.     mrcc.Update
  394.     mrcc.Close
  395.     
  396.     txtSQL = "select * from rooms where roomNO = '" & cboItem(0) & "'"
  397.     Set mrcc = ExecuteSQL(txtSQL, MsgText)
  398.     If Not mrcc.EOF Then
  399.         mrcc!putup = " "
  400.     End If
  401.     mrcc.Update
  402.     mrcc.Close
  403.     If gintCmode = 1 Then
  404.         Unload Me
  405.         mblChange = False
  406.         MsgBox "金额为" & amMount & "元,结算完毕!", vbOKOnly + vbExclamation, "添加结算信息"
  407.         If flagCedit Then
  408.             Unload frmCheckout
  409.         End If
  410.         frmCheckout.txtSQL = "select * from bookin where ammount <> '0'"
  411.         frmCheckout.Show
  412.         
  413.     ElseIf gintCmode = 2 Then
  414.         MsgBox "金额为" & amMount & "元,结算信息修改完毕!", vbOKOnly + vbExclamation, "修改结算信息"
  415.         Unload Me
  416.         If flagCedit Then
  417.             Unload frmCheckout
  418.         End If
  419.         frmCheckout.txtSQL = "select * from bookin where ammount <> '0'"
  420.         frmCheckout.Show
  421.         
  422.     End If
  423.     
  424. End Sub
  425. Private Sub Form_Load()
  426.     Dim sSql As String
  427.     Dim intCount As Integer
  428.     Dim MsgText As String
  429.     
  430.     
  431.    
  432.     If gintCmode = 1 Then
  433.         Me.Caption = Me.Caption & "添加"
  434.         
  435.         '初始化物资名称
  436.         txtSQL = "select DISTINCT roomno from bookin where ammount = '0'"
  437.         Set mrc = ExecuteSQL(txtSQL, MsgText)
  438.         
  439.         If Not mrc.EOF Then
  440.             
  441.                 Do While Not mrc.EOF
  442.                     cboItem(0).AddItem Trim(mrc!roomno)
  443.                     mrc.MoveNext
  444.                 Loop
  445.                 
  446.             
  447.         Else
  448.             MsgBox "没有顾客入住!", vbOKOnly + vbExclamation, "警告"
  449.             cmdSave.Enabled = False
  450.             Exit Sub
  451.         End If
  452.         
  453.         
  454.         mrc.Close
  455.         
  456.         
  457.         
  458.                 
  459.     ElseIf gintCmode = 2 Then
  460.        
  461.         
  462.         
  463.         Set mrc = ExecuteSQL(txtSQL, MsgText)
  464.         
  465.         If mrc.EOF = False Then
  466.             With mrc
  467.                 txtNo = mrc.Fields(0)
  468.                 
  469.                 
  470.                 For intCount = 0 To 1
  471.                     txtItem(intCount) = .Fields(intCount + 1)
  472.                 Next intCount
  473.                 
  474.                 cboItem(0).AddItem .Fields(3)
  475.                 cboItem(0).ListIndex = 0
  476.                 
  477.                 For intCount = 2 To 3
  478.                     If Not IsNull(.Fields(intCount + 2)) Then
  479.                         txtItem(intCount) = .Fields(intCount + 2)
  480.                     End If
  481.                 Next intCount
  482.                 
  483.                 txtItem(5) = .Fields(6)
  484.                 txtItem(4) = .Fields(7)
  485.             End With
  486.             
  487.         End If
  488.         mrc.Close
  489.         
  490.         txtSQL = "select * from rooms where roomNO = '" & cboItem(0) & "'"
  491.         Set mrc = ExecuteSQL(txtSQL, MsgText)
  492.         If mrc.EOF = False Then
  493.             With mrc
  494.                 For intCount = 1 To 3
  495.                     cboItem(intCount).AddItem .Fields(intCount)
  496.                     cboItem(intCount).ListIndex = 0
  497.                 Next intCount
  498.             End With
  499.         End If
  500.         mrc.Close
  501.         
  502.         For intCount = 0 To 3
  503.             txtItem(intCount).Enabled = False
  504.         Next intCount
  505.         
  506.         
  507.         Me.Caption = Me.Caption & "修改"
  508.             
  509.         
  510.     End If
  511.     
  512.     mblChange = False
  513.     
  514.     
  515. End Sub
  516. Private Sub Form_Unload(Cancel As Integer)
  517.     gintCmode = 0
  518. End Sub
  519. Private Sub txtItem_Change(Index As Integer)
  520.     '有变化设置gblchange
  521.     mblChange = True
  522.     
  523. End Sub
  524. Private Sub txtItem_GotFocus(Index As Integer)
  525.     txtItem(Index).SelStart = 0
  526.     txtItem(Index).SelLength = Len(txtItem(Index))
  527.     
  528. End Sub
  529. Private Sub txtItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
  530.         EnterToTab KeyCode
  531. End Sub