機房管理 上下機

2021-08-10 23:05:57 字數 3213 閱讀 1708

上機

'判斷是否為空

'判斷卡號是否註冊,是否退卡

'查basicdata_info,判斷餘額是否小於最小金額

txtsql = "select*from basicdata_info"

set mrcbasicdata = executesql(txtsql, msgtext)

mrcbasicdata.movefirst

if val(mrc.fields(7)) < val(mrcbasicdata.fields(5)) then

msgbox "餘額不足,請充值後上機", vbokonly + vbexclamation, "提示"

txtcardno.text = ""

txtcardno.setfocus

else

'查online_info,看該卡是否在上機

txtsql = "select*from online_info where cardno='" & trim(txtcardno.text) & "'"

set mrc = executesql(txtsql, msgtext)

if mrc.eof = false then

msgbox "該卡正在上機,不能重複上機!"

txtcardno.text = mrc.fields(0)

...txtontime.text = mrc.fields(7)

txtsql = "select*from student_info where cardno='" & trim(txtcardno.text) & "'"

set mrccash = executesql(txtsql, msgtext)

txtbalance.text = mrccash!cash

else

'正常上機,顯示卡號資訊

'更新line_info資料

'更新online_info資料

下機dim curconsume as single '用於儲存真正花費錢的時間

dim remaincash as single '用於儲存使用者的餘額

dim fixedunit as single '用於固定使用者儲存單位金額

dim temunit as single '用於臨時使用者儲存單位金額

dim a as integer

'判斷卡號是否為空,判斷是否為數字

'判斷卡號是否註冊,是否退卡

'判斷該卡號是否在上機,沒有上機不能下機

'計算所消費的時間

intlinetime = (date - datevalue(mrc!ondate)) * 1440 + (hour(time) - hour(timevalue(mrc!ontime))) * 60 + (minute(time) - minute(timevalue(mrc!ontime))) '時間單位為分鐘

txtsql = "select * from student_info where cardno='" & trim(txtcardno.text) & "'"

set mrc = executesql(txtsql, msgtext)

'獲得基本表的資料

txtsql = "select * from basicdata_info"

set mrcbasicdata = executesql(txtsql, msgtext)

mrcbasicdata.movefirst

'單位時間的費用 (把固定使用者,臨時使用者單位時間的費用分別賦值給費用)

fixedunit = val(mrcbasicdata.fields(0)) '把固定使用者的金額賦值給變數

temunit = val(mrcbasicdata.fields(1)) '把臨時使用者的金額賦值給變數

if intlinetime <= val(trim(mrcbasicdata.fields(4))) then

txtexpensecash.text = "0"

else

if intlinetime < val(trim(mrcbasicdata.fields(3))) then

txtexpensecash.text = "0"

end if

end if

if intlinetime >= val(trim(mrcbasicdata!leasttime)) and intlinetime and trim(mrc.fields(14)) = "固定使用者" then

a = int(intlinetime / val(trim(mrcbasicdata!unittime)))

if a = intlinetime / trim(mrcbasicdata!unittime) then

curconsume = a

else

curconsume = a + 1

end if

txtexpensecash.text = val(curconsume) * val(fixedunit)

else

if intlinetime >= val(trim(mrcbasicdata!leasttime)) and intlinetime and trim(mrc.fields(14)) = "臨時使用者" then

a = int(intlinetime / val(trim(mrcbasicdata!unittime)))

if a = intlinetime / trim(mrcbasicdata!unittime) then

curconsume = a

else

curconsume = a + 1

end if

txtexpensecash.text = val(curconsume) * val(temunit)

end if

end if

'更新學生表

'更新上機記錄表

end sub

再看一遍,發現還是挺簡單的,以後要繼續加油!

機房收費系統 上下機

最近大家都在進行機房收費系統,看大家的部落格,基本上都是先理清思路再實現功能,回想自己當時做的時候就不夠好,只是盲目的敲 卻忽略了方向比努力更重要這個道理,導致最後出現了很多漏洞,於是又重新畫了一遍上下機的流程圖,希望能對以後機房的學習有幫助。上機 只要思路清晰,具體的 實現很簡單。下機 下機需要計...

機房收費系統 上下機

在 上機下機中 主要是要想到所有在上機中可能發生的事件 並作出相應的對策 確保使用者可以成功的上機 下 機。上機 卡號是否位數字,需要判斷卡號是否存在,卡內餘額是否充足,卡號是否正在被使用。首先 查詢資料庫 中的student表 判斷卡號是否存在,且 處於可使用狀態 如果均符合以上要求 那麼就要檢視...

機房收費系統 上下機

前言 這兩個窗體 邏輯基本類似,開始正文 邏輯圖 重要 展示 從下機來說下機時間的確定是乙個承上啟下的作用 basicsql select from basicdata info 連線基本資料表 set basicmrc executesql basicsql,basictext if online...