1.11 后臺(tái)信息管理設(shè)計(jì)
1.11.1 信息管理功能概述
根據(jù)需求分析,后臺(tái)信息的管理功能主要包括信息顯示、信息審核、信息刪除和信息付費(fèi)管理功能。下面分別介紹后臺(tái)信息管理中的各個(gè)功能。
1.信息顯示功能介紹
后臺(tái)信息顯示功能,分為信息的列表顯示和詳細(xì)內(nèi)容顯示。列表顯示的信息由管理員選擇的狀態(tài)類型決定。顯示狀態(tài)分為付費(fèi)狀態(tài)和審核狀態(tài)兩種,如圖1.53所示。
管理員在狀態(tài)區(qū)域中選擇顯示方式,并在“信息類別”下拉列表框中選擇要顯示信息的信息類別,單擊“顯示”按鈕提交表單,則程序會(huì)按照該顯示方式列表顯示出符合條件的所有信息,如圖1.54所示。
當(dāng)用戶單擊列表顯示出的信息的標(biāo)題或“審核”超鏈接后,將顯示該信息的詳細(xì)內(nèi)容。
2.信息審核功能介紹
用戶發(fā)布信息后,并不能直接顯示在頁(yè)面中,需要由管理員來審核該信息是否可以發(fā)布。要進(jìn)行信息審核,首先需要顯示出未審核的信息??蓮暮笈_(tái)主頁(yè)右側(cè)的功能區(qū)的“顯示方式”欄中選擇“付費(fèi)狀態(tài)”為“全部”,“審核狀態(tài)”為“未審核”的顯示方式,并在“信息類別”下拉列表框中選擇信息類別,如圖1.55所示,單擊“顯示”按鈕,則顯示該類別下的所有未審核信息。
在該頁(yè)面中查看信息的詳細(xì)內(nèi)容,單擊“通過審核”按鈕,即可將該信息設(shè)置為已通過審核狀態(tài)。信息審核成功后,會(huì)按照之前已選擇的顯示方式,重新進(jìn)行查詢并顯示其結(jié)果。
3.信息刪除功能介紹
信息刪除功能用來刪除一些發(fā)布的無效信息,從圖1.54可以看到,在每條信息的操作欄中,都提供了一個(gè)“刪除”超鏈接,單擊該超鏈接,即可刪除對(duì)應(yīng)的信息。另外,也可以通過圖1.56所示信息審核頁(yè)面中的“刪除信息”按鈕來實(shí)現(xiàn)刪除操作。信息刪除成功后,同樣會(huì)按照之前已選擇的顯示方式,重新進(jìn)行查詢并顯示其結(jié)果。
4.信息付費(fèi)管理功能概述
付費(fèi)管理即將信息設(shè)置為已付費(fèi)狀態(tài)。對(duì)于已付費(fèi)的信息在前臺(tái)頁(yè)面顯示時(shí),始終顯示在頁(yè)面的頂部位置,以便第一時(shí)間被瀏覽。在本系統(tǒng)中,用戶在前臺(tái)發(fā)布的信息,默認(rèn)為都是免費(fèi)信息。若想將發(fā)布的信息在“繳費(fèi)專區(qū)”中顯示,信息發(fā)布者首先需要繳納費(fèi)用,然后提供信息的ID值,由系統(tǒng)管理員根據(jù)該ID值查詢信息,最后將該信息設(shè)置為已付費(fèi)狀態(tài)。需要信息發(fā)布者提供的ID值,是在信息發(fā)布成功后,由系統(tǒng)提供給用戶的。
管理員要進(jìn)行付費(fèi)設(shè)置,首先需要登錄到后臺(tái),然后在功能區(qū)的“付費(fèi)設(shè)置”欄中輸入要進(jìn)行付費(fèi)設(shè)置的ID值,查詢出該信息,如圖1.57所示。單擊“設(shè)為付費(fèi)”按鈕,可將該信息設(shè)置為已付費(fèi)狀態(tài)。
1.11.2 信息管理技術(shù)分析
1.信息顯示技術(shù)分析
對(duì)于后臺(tái)信息顯示中的列表顯示,主要用來顯示符合指定條件的信息,該條件包括信息類別、付費(fèi)狀態(tài)和審核狀態(tài)。
在數(shù)據(jù)表tb_info的設(shè)計(jì)中,設(shè)置了info_payfor和info_state兩個(gè)字段,分別用來表示“付費(fèi)狀態(tài)”與“審核狀態(tài)”。當(dāng)info_payfor字段內(nèi)容為1時(shí),表示該信息已付費(fèi),為0時(shí)表示未付費(fèi);同樣,info_state字段內(nèi)容為1時(shí),表示已通過審核,為0時(shí)表示未通過審核。
所以,若要顯示招聘信息類別下的“未審核”和“已付費(fèi)”的信息,應(yīng)執(zhí)行如下的SQL語句。
SELECT * FROM tb_info WHERE (info_type=1) AND (info_state='0') AND (info_payfor='1')
若要顯示培訓(xùn)信息類別下的“未審核”和“未付費(fèi)”的信息,應(yīng)執(zhí)行如下的SQL語句。
SELECT * FROM tb_info WHERE (info_type=1) AND (info_state='0') AND (info_payfor='0')
因此,要獲取符合條件的信息,只需要設(shè)置字段info_type、info_state和info_payfor的值即可。
本系統(tǒng)提供了由兩組單選按鈕組成的“付費(fèi)狀態(tài)”和“審核狀態(tài)”選項(xiàng)。對(duì)于“付費(fèi)狀態(tài)”選項(xiàng)組,選擇“未付費(fèi)”,則傳遞的值為0;選擇“已付費(fèi)”,則傳遞的值為1;選擇“全部”,則傳遞all?!皩徍藸顟B(tài)”選項(xiàng)組的設(shè)置與此相同。另外,實(shí)現(xiàn)了一個(gè)下拉列表框,供用戶選擇信息類別。將這些單選按鈕與下拉列表框都在一個(gè)表單中實(shí)現(xiàn),這樣,當(dāng)單擊“顯示”按鈕提交表單后,選擇的狀態(tài)會(huì)通過表單進(jìn)行傳遞??蓜?chuàng)建一個(gè)JavaBean來封裝表單數(shù)據(jù),即保存選擇的狀態(tài)。
例如,按照?qǐng)D1.58所示的方式進(jìn)行選擇,則在提交表單后的請(qǐng)求中將添加如下參數(shù):
showType.payforType=1&showType.stateType=0&showType.infoType=1
其中showType為封裝表單數(shù)據(jù)的JavaBean實(shí)例,payforType為該JavaBean中保存“付費(fèi)狀態(tài)”的屬性,stateType為保存“審核狀態(tài)”的屬性,infoType為保存“信息類別”的屬性。
Action處理類在接收表單請(qǐng)求后,獲取表單數(shù)據(jù):
int infoType=showType.getInfoType();
String stateType=showType.getStateType();
String payforType=showType.getPayforType();
然后生成SQL語句:
SELECT * FROM tb_info WHERE (info_type=?) AND (info_state=?) AND (info_payfor=?)
語句中的“?”最終將依次被設(shè)置為變量infoType、stateType和payforType的值。
對(duì)于后臺(tái)信息顯示中的詳細(xì)內(nèi)容顯示,只需要獲取要查看信息的ID值,然后通過如下的SQL語句查詢數(shù)據(jù)表來實(shí)現(xiàn)。
SELECT * FROM tb_info WHERE (id = ?)