專利名稱:一種自動(dòng)保存用戶界面狀態(tài)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及軟件分層架構(gòu)的表示層,具體地說(shuō)是一種自動(dòng)保存用戶界面狀態(tài)的方法。
背景技術(shù):
在軟件系統(tǒng)中,用戶通過(guò)用戶界面與系統(tǒng)進(jìn)行交互。當(dāng)用戶在一個(gè)界面錄入信息時(shí),由于系統(tǒng)超時(shí)或其他不可控因素(系統(tǒng)崩潰、網(wǎng)絡(luò)異常等),導(dǎo)致用戶錄入的數(shù)據(jù)丟失, 迫使用戶不得不重新錄入,這是一種不好的用戶體驗(yàn),如果用戶錄入的數(shù)據(jù)量比較大,這同時(shí)也是一種非常低效的操作。
如果在系統(tǒng)中能夠提供一種用戶錄入數(shù)據(jù)的暫存方法,當(dāng)上述場(chǎng)景產(chǎn)生而導(dǎo)致數(shù)據(jù)丟失時(shí),系統(tǒng)可以自動(dòng)幫助用戶找回錄入的數(shù)據(jù),這將會(huì)是一種非常好的系統(tǒng)特性,在改善用戶體驗(yàn)同時(shí),也可實(shí)際避免或減少由于數(shù)據(jù)丟失帶來(lái)的繁瑣、不便。 發(fā)明內(nèi)容
本發(fā)明的技術(shù)任務(wù)是針對(duì)上述現(xiàn)有技術(shù)的不足,提供一種自動(dòng)保存用戶界面狀態(tài)的方法。該方法通過(guò)為用戶界面定義一組接口標(biāo)準(zhǔn),這組接口標(biāo)準(zhǔn)定義了界面中保存及重新加載用戶界面狀態(tài)所需要的屬性及操作,從而基于這組接口標(biāo)準(zhǔn)可以實(shí)現(xiàn)符合接口標(biāo)準(zhǔn)的任意界面的用戶狀態(tài)暫存及重新加載,避免用戶丟失數(shù)據(jù)。
本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的一種自動(dòng)保存用戶界面狀態(tài)的方法,包含以下步驟A.定義接口標(biāo)準(zhǔn)定義具體界面遵循的接口標(biāo)準(zhǔn)以實(shí)現(xiàn)用戶界面狀態(tài)保存;B.運(yùn)行時(shí)控制當(dāng)系統(tǒng)運(yùn)行期間,通過(guò)操作步驟A中定義的接口標(biāo)準(zhǔn),來(lái)實(shí)現(xiàn)具體用戶界面的視圖狀態(tài)保存及加載。
步驟A中所述接口標(biāo)準(zhǔn)包含狀態(tài)視圖接口、視圖狀態(tài)上下文、視圖狀態(tài)保存策略接口、視圖狀態(tài)加載策略接口、視圖狀態(tài)刪除策略接口、視圖狀態(tài)保存策略配置、視圖狀態(tài)加載策略配置及視圖狀態(tài)刪除策略配置,所述“視圖”是英文“View”的中文翻譯,用來(lái)抽象的代表一個(gè)用戶界面。
所述狀態(tài)視圖接口用于定義需要實(shí)現(xiàn)界面狀態(tài)保存的用戶界面需要實(shí)現(xiàn)的接口標(biāo)準(zhǔn)。
“狀態(tài)視圖接口”包含七個(gè)屬性視圖標(biāo)識(shí)、視圖擴(kuò)展標(biāo)識(shí)、是否需要保存界面狀態(tài),是否可加載視圖狀態(tài)、保存策略標(biāo)識(shí)、加載策略標(biāo)識(shí)、刪除策略標(biāo)識(shí)。
“狀態(tài)視圖接口”包含一個(gè)“視圖狀態(tài)變化”的事件,當(dāng)界面狀態(tài)發(fā)生變化時(shí),會(huì)觸發(fā)該事件,用于視圖狀態(tài)的變更的通知。
“狀態(tài)視圖接口”包含兩個(gè)操作,分別為“讀取界面狀態(tài)”、“加載界面狀態(tài)”。所述視圖狀態(tài)上下文用于記錄視圖狀態(tài)相關(guān)的信息,包含五個(gè)屬性視圖標(biāo)識(shí)、擴(kuò)展視圖標(biāo)識(shí)、 數(shù)據(jù)源、擴(kuò)展存儲(chǔ)、最后變更時(shí)間。
所述視圖狀態(tài)保存策略接口用于在需要保存視圖狀態(tài)時(shí),執(zhí)行視圖狀態(tài)的保存,包含一個(gè)“保存視圖狀態(tài)”的操作。所述視圖狀態(tài)加載策略接口用于在需要加載視圖狀態(tài)時(shí),對(duì)“視圖狀態(tài)上下文”的查找、匹配,包含“查找視圖狀態(tài)上下文”的操作。所述視圖狀態(tài)刪除策略接口用于刪除視圖狀態(tài)存儲(chǔ),包含“刪除視圖狀態(tài)”的操作。所述視圖狀態(tài)保存策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖保存策略接口”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)保存策略配置”、“獲取視圖狀態(tài)保存策略配置”。所述視圖狀態(tài)加載策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖狀態(tài)加載策略接口”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)加載策略配置”、“獲取視圖狀態(tài)加載策略配
,,
直 ο所述視圖狀態(tài)刪除策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖狀態(tài)刪除策略接口”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)刪除策略配置”、“獲取視圖狀態(tài)刪除策略配
,,
直 ο步驟B包括下述子場(chǎng)景
(1)保存界面狀態(tài)
a)后臺(tái)定時(shí)保存界面狀態(tài);
b)當(dāng)界面狀態(tài)變更時(shí)保存界面狀態(tài);
(2)加載界面狀態(tài)
(3)刪除界面狀態(tài)。在“保存界面狀態(tài)”場(chǎng)景,進(jìn)行界面視圖狀態(tài)保存時(shí),首先根據(jù)當(dāng)前界面實(shí)現(xiàn)的“狀態(tài)視圖接口 ”,獲取“是否需要保存界面狀態(tài)”來(lái)判斷是否需要進(jìn)行視圖保存,如果不需要?jiǎng)t終止操作;然后系統(tǒng)獲取“狀態(tài)視圖接口”的“保存策略標(biāo)識(shí)”,如果“保存策略標(biāo)識(shí)”不為空,貝IJ調(diào)用“視圖保存策略配置”獲取指定的保存策略;如果“保存策略標(biāo)識(shí)”為空,則調(diào)用“視圖保存策略配置”獲取默認(rèn)的保存策略;
在獲取到指定的策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)保存策略”的保存策略程序,在保存策略程序中,調(diào)用界面視圖的“讀取界面狀態(tài)”方法獲取到當(dāng)前界面視圖的“視圖狀態(tài)上下文”,并對(duì)用戶界面狀態(tài)進(jìn)行保存;其中,視圖狀態(tài)保存策略,可以通過(guò)配置方式進(jìn)行擴(kuò)展,從而提供多種保存策略。所述“后臺(tái)定時(shí)保存界面狀態(tài)”啟用時(shí),系統(tǒng)采用定時(shí)輪詢的機(jī)制,每間隔一段時(shí)間,會(huì)自動(dòng)產(chǎn)生一個(gè)保存界面狀態(tài)的調(diào)用,用以自動(dòng)保存界面狀態(tài);
所述“當(dāng)界面狀態(tài)變更時(shí)保存界面狀態(tài)”機(jī)制啟用時(shí),系統(tǒng)會(huì)注冊(cè)界面視圖的“視圖狀態(tài)變化”事件,當(dāng)事件觸發(fā)時(shí),系統(tǒng)進(jìn)行界面視圖狀態(tài)的保存。在“加載界面狀態(tài)”場(chǎng)景,當(dāng)系統(tǒng)打開(kāi)一個(gè)用戶界面時(shí),系統(tǒng)創(chuàng)建用戶界面,根據(jù)用戶界面實(shí)現(xiàn)的“狀態(tài)視圖接口 ”,根據(jù)“狀態(tài)視圖接口 ”的“是否可加載視圖狀態(tài)”來(lái)判斷是否需要進(jìn)行視圖加載如果需要加載,則獲取“狀態(tài)視圖接口”的“加載策略標(biāo)識(shí)”,如果獲取到的“加載策略標(biāo)識(shí)”不為空,則調(diào)用“視圖加載策略配置”獲取指定的加載策略;如果“加載策略標(biāo)識(shí)”為空,則調(diào)用“視圖加載策略配置”獲取默認(rèn)的保存策略;
在獲取到指定的策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)加載策略”的加載策略程序,在加載策略程序中,根據(jù)當(dāng)前“狀態(tài)視圖接口 ”的屬性,根據(jù)特定的策略對(duì)當(dāng)前的狀態(tài)視圖的視圖狀態(tài)進(jìn)行查找、匹配;如果沒(méi)有沒(méi)有加載到相應(yīng)的“視圖狀態(tài)上下文”,則中斷界面狀態(tài)加載過(guò)程;如果找到了特定的“視圖狀態(tài)上下文”,則調(diào)用 “狀態(tài)視圖接口 ”的“加載界面狀態(tài)”方法進(jìn)行加載操作。
在“刪除界面狀態(tài)”場(chǎng)景,當(dāng)系統(tǒng)自動(dòng)保存的用戶狀態(tài)已經(jīng)失效時(shí),需要?jiǎng)h除系統(tǒng)保存的視圖狀態(tài)系統(tǒng)根據(jù)當(dāng)前用戶界面實(shí)現(xiàn)的“狀態(tài)視圖接口”,“狀態(tài)視圖接口”的“刪除策略標(biāo)識(shí)”,如果“刪除策略標(biāo)識(shí)”不為空,則調(diào)用“視圖刪除策略配置”獲取指定的刪除策略;如果“刪除策略標(biāo)識(shí)”為空,則調(diào)用“視圖刪除策略配置”獲取默認(rèn)的刪除策略;在獲取到指定的刪除策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)刪除策略”的刪除策略程序,在刪除策略程序中對(duì)視圖狀態(tài)存儲(chǔ)進(jìn)行刪除;其中,視圖狀態(tài)刪除策略,可以通過(guò)配置方式進(jìn)行擴(kuò)展,從而提供多種刪除策略。
與現(xiàn)有技術(shù)相比,通過(guò)使用本發(fā)明提供的自動(dòng)保存用戶界面狀態(tài)的方法,軟件系統(tǒng)可以實(shí)現(xiàn)用戶界面狀態(tài)的自動(dòng)保存、加載,在失效后進(jìn)行刪除等功能特性。在改善用戶體驗(yàn)同時(shí),也可實(shí)際避免或減少由于數(shù)據(jù)丟失帶來(lái)的繁瑣、不便。
附圖I是本發(fā)明的界面狀態(tài)自動(dòng)保存的接口標(biāo)準(zhǔn)定義結(jié)構(gòu)示意圖。
具體實(shí)施方式
參照說(shuō)明書附圖以具體實(shí)施例對(duì)本發(fā)明的自動(dòng)保存用戶界面狀態(tài)的方法作以下詳細(xì)地說(shuō)明。
實(shí)施例一本發(fā)明的自動(dòng)保存用戶界面狀態(tài)的方法,包含以下步驟A.定義接口標(biāo)準(zhǔn)定義具體界面遵循的接口標(biāo)準(zhǔn)以實(shí)現(xiàn)用戶界面狀態(tài)保存;B.運(yùn)行時(shí)控制當(dāng)系統(tǒng)運(yùn)行期間,通過(guò)操作步驟A中定義的接口標(biāo)準(zhǔn),來(lái)實(shí)現(xiàn)具體用戶界面的視圖狀態(tài)保存及加載。
如附圖I所示步驟A中所述接口標(biāo)準(zhǔn)包含狀態(tài)視圖接口、視圖狀態(tài)上下文、視圖狀態(tài)保存策略接口、視圖狀態(tài)加載策略接口、視圖狀態(tài)刪除策略接口、視圖狀態(tài)保存策略配置、視圖狀態(tài)加載策略配置及視圖狀態(tài)刪除策略配置,所述“視圖”是英文“View”的中文翻譯,用來(lái)抽象的代表一個(gè)用戶界面。
所述狀態(tài)視圖接口用于定義需要實(shí)現(xiàn)界面狀態(tài)保存的用戶界面需要實(shí)現(xiàn)的接口標(biāo)準(zhǔn)。
“狀態(tài)視圖接口”包含七個(gè)屬性視圖標(biāo)識(shí)、視圖擴(kuò)展標(biāo)識(shí)、是否需要保存界面狀態(tài),是否可加載視圖狀態(tài)、保存策略標(biāo)識(shí)、加載策略標(biāo)識(shí)、刪除策略標(biāo)識(shí),具體描述如下
權(quán)利要求
1.一種自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于包含以下步驟O定義接口標(biāo)準(zhǔn)定義具體界面遵循的接口標(biāo)準(zhǔn)以實(shí)現(xiàn)用戶界面狀態(tài)保存;2)運(yùn)行時(shí)控制當(dāng)系統(tǒng)運(yùn)行期間,通過(guò)操作步驟I中定義的接口標(biāo)準(zhǔn),來(lái)實(shí)現(xiàn)具體用戶界面的視圖狀態(tài)保存及加載。
2.根據(jù)權(quán)利要求I所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于步驟I中所述接口標(biāo)準(zhǔn)包含狀態(tài)視圖接口、視圖狀態(tài)上下文、視圖狀態(tài)保存策略接口、視圖狀態(tài)加載策略接口、視圖狀態(tài)刪除策略接口、視圖狀態(tài)保存策略配置、視圖狀態(tài)加載策略配置及視圖狀態(tài)刪除策略配置,所述狀態(tài)視圖接口用于定義需要實(shí)現(xiàn)界面狀態(tài)保存的用戶界面需要實(shí)現(xiàn)的接口標(biāo)準(zhǔn), 包含七個(gè)屬性視圖標(biāo)識(shí)、視圖擴(kuò)展標(biāo)識(shí)、是否需要保存界面狀態(tài),是否可加載視圖狀態(tài)、保存策略標(biāo)識(shí)、加載策略標(biāo)識(shí)、刪除策略標(biāo)識(shí);包含一個(gè)“視圖狀態(tài)變化”的事件當(dāng)界面狀態(tài)發(fā)生變化時(shí),會(huì)觸發(fā)該事件,用于視圖狀態(tài)的變更的通知;包含兩個(gè)操作,分別為“讀取界面狀態(tài)”、“加載界面狀態(tài)”;所述視圖狀態(tài)上下文用于記錄視圖狀態(tài)相關(guān)的信息,包含五個(gè)屬性視圖標(biāo)識(shí)、擴(kuò)展視圖標(biāo)識(shí)、數(shù)據(jù)源、擴(kuò)展存儲(chǔ)、最后變更時(shí)間;所述視圖狀態(tài)保存策略接口用于在需要保存視圖狀態(tài)時(shí),執(zhí)行視圖狀態(tài)的保存,包含一個(gè)“保存視圖狀態(tài)”的操作;所述視圖狀態(tài)加載策略接口用于在需要加載視圖狀態(tài)時(shí),對(duì)“視圖狀態(tài)上下文”的查找、匹配,包含“查找視圖狀態(tài)上下文”的操作;所述視圖狀態(tài)刪除策略接口用于刪除視圖狀態(tài)存儲(chǔ),包含“刪除視圖狀態(tài)”的操作; 所述視圖狀態(tài)保存策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖保存策略接口 ”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)保存策略配置”、“獲取視圖狀態(tài)保存策略配置”;所述視圖狀態(tài)加載策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖狀態(tài)加載策略接口”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)加載策略配置”、“獲取視圖狀態(tài)加載策略配置”;所述視圖狀態(tài)刪除策略配置用于記錄當(dāng)前系統(tǒng)中提供的“視圖狀態(tài)刪除策略接口”集合,包含兩個(gè)操作“獲取默認(rèn)的視圖狀態(tài)刪除策略配置”、“獲取視圖狀態(tài)刪除策略配置”。
3.根據(jù)權(quán)利要求I所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于步驟2包括下述子場(chǎng)景1)保存界面狀態(tài)后臺(tái)定時(shí)保存界面狀態(tài);當(dāng)界面狀態(tài)變更時(shí)保存界面狀態(tài);2)加載界面狀態(tài)3)刪除界面狀態(tài)。
4.根據(jù)權(quán)利要求3所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于在“保存界面狀態(tài)”場(chǎng)景,進(jìn)行界面視圖狀態(tài)保存時(shí),首先根據(jù)當(dāng)前界面實(shí)現(xiàn)的“狀態(tài)視圖接口”,獲取“是否需要保存界面狀態(tài)”來(lái)判斷是否需要進(jìn)行視圖保存,如果不需要?jiǎng)t終止操作;然后系統(tǒng)獲取 “狀態(tài)視圖接口 ”的“保存策略標(biāo)識(shí)”,如果“保存策略標(biāo)識(shí)”不為空,則調(diào)用“視圖保存策略配置”獲取指定的保存策略;如果“保存策略標(biāo)識(shí)”為空,則調(diào)用“視圖保存策略配置”獲取默認(rèn)的保存策略;在獲取到指定的策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)保存策略”的保存策略程序,在保存策略程序中,調(diào)用界面視圖的“讀取界面狀態(tài)”方法獲取到當(dāng)前界面視圖的“視圖狀態(tài)上下文”,并對(duì)用戶界面狀態(tài)進(jìn)行保存;其中,視圖狀態(tài)保存策略,可以通過(guò)配置方式進(jìn)行擴(kuò)展,從而提供多種保存策略。
5.根據(jù)權(quán)利要求3所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于所述“后臺(tái)定時(shí)保存界面狀態(tài)”啟用時(shí),系統(tǒng)采用定時(shí)輪詢的機(jī)制,每間隔一段時(shí)間,會(huì)自動(dòng)產(chǎn)生一個(gè)保存界面狀態(tài)的調(diào)用,用以自動(dòng)保存界面狀態(tài); 所述“當(dāng)界面狀態(tài)變更時(shí)保存界面狀態(tài)”機(jī)制啟用時(shí),系統(tǒng)會(huì)注冊(cè)界面視圖的“視圖狀態(tài)變化”事件,當(dāng)事件觸發(fā)時(shí),系統(tǒng)進(jìn)行界面視圖狀態(tài)的保存。
6.根據(jù)權(quán)利要求3所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于在“加載界面狀態(tài)”場(chǎng)景,當(dāng)系統(tǒng)打開(kāi)一個(gè)用戶界面時(shí),系統(tǒng)創(chuàng)建用戶界面,根據(jù)用戶界面實(shí)現(xiàn)的“狀態(tài)視圖接口 ”,根據(jù)“狀態(tài)視圖接口 ”的“是否可加載視圖狀態(tài)”來(lái)判斷是否需要進(jìn)行視圖加載如果需要加載,則獲取“狀態(tài)視圖接口”的“加載策略標(biāo)識(shí)”,如果獲取到的“加載策略標(biāo)識(shí)”不為空,則調(diào)用“視圖加載策略配置”獲取指定的加載策略;如果“加載策略標(biāo)識(shí)”為空,則調(diào)用“視圖加載策略配置”獲取默認(rèn)的保存策略; 在獲取到指定的策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)加載策略”的加載策略程序,在加載策略程序中,根據(jù)當(dāng)前“狀態(tài)視圖接口 ”的屬性,根據(jù)特定的策略對(duì)當(dāng)前的狀態(tài)視圖的視圖狀態(tài)進(jìn)行查找、匹配;如果沒(méi)有沒(méi)有加載到相應(yīng)的“視圖狀態(tài)上下文”,則中斷界面狀態(tài)加載過(guò)程;如果找到了特定的“視圖狀態(tài)上下文”,則調(diào)用“狀態(tài)視圖接口 ”的“加載界面狀態(tài)”方法進(jìn)行加載操作。
7.根據(jù)權(quán)利要求3所述的自動(dòng)保存用戶界面狀態(tài)的方法,其特征在于在“刪除界面狀態(tài)”場(chǎng)景,當(dāng)系統(tǒng)自動(dòng)保存的用戶狀態(tài)已經(jīng)失效時(shí),需要?jiǎng)h除系統(tǒng)保存的視圖狀態(tài)系統(tǒng)根據(jù)當(dāng)前用戶界面實(shí)現(xiàn)的“狀態(tài)視圖接口 ”,“狀態(tài)視圖接口 ”的“刪除策略標(biāo)識(shí)”,如果“刪除策略標(biāo)識(shí)”不為空,則調(diào)用“視圖刪除策略配置”獲取指定的刪除策略;如果“刪除策略標(biāo)識(shí)”為空,則調(diào)用“視圖刪除策略配置”獲取默認(rèn)的刪除策略; 在獲取到指定的刪除策略配置后,在程序中根據(jù)策略配置描述,加載對(duì)應(yīng)的實(shí)現(xiàn)了“視圖狀態(tài)刪除策略”的刪除策略程序,在刪除策略程序中對(duì)視圖狀態(tài)存儲(chǔ)進(jìn)行刪除;其中,視圖狀態(tài)刪除策略,可以通過(guò)配置方式進(jìn)行擴(kuò)展,從而提供多種刪除策略。
全文摘要
本發(fā)明公開(kāi)了一種自動(dòng)保存用戶界面狀態(tài)的方法,涉及軟件分層架構(gòu)的表示層。該方法包含以下步驟A.定義接口標(biāo)準(zhǔn)定義具體界面遵循的接口標(biāo)準(zhǔn)以實(shí)現(xiàn)用戶界面狀態(tài)保存;B.運(yùn)行時(shí)控制當(dāng)系統(tǒng)運(yùn)行期間,通過(guò)操作步驟A中定義的接口標(biāo)準(zhǔn),來(lái)實(shí)現(xiàn)具體用戶界面的視圖狀態(tài)保存及加載。與現(xiàn)有技術(shù)相比,本發(fā)明的自動(dòng)保存用戶界面狀態(tài)的方法通過(guò)為用戶界面定義一組接口標(biāo)準(zhǔn),這組接口標(biāo)準(zhǔn)定義了界面中保存及重新加載用戶界面狀態(tài)所需要的屬性及操作,從而基于這組接口標(biāo)準(zhǔn)可以實(shí)現(xiàn)符合接口標(biāo)準(zhǔn)的任意界面的用戶狀態(tài)暫存及重新加載。通過(guò)本方法,在改善用戶體驗(yàn)同時(shí),也可實(shí)際避免或減少由于數(shù)據(jù)丟失帶來(lái)的繁瑣、不便。
文檔編號(hào)G06F11/14GK102937923SQ20121040859
公開(kāi)日2013年2月20日 申請(qǐng)日期2012年10月24日 優(yōu)先權(quán)日2012年10月24日
發(fā)明者孫立新, 朱詩(shī)嚴(yán) 申請(qǐng)人:浪潮集團(tuán)山東通用軟件有限公司