MES開(kāi)發(fā)與應(yīng)用 課件 工業(yè)管理軟件開(kāi)發(fā)基礎(chǔ)-平臺(tái)配置-平臺(tái)編輯器使用介紹_第1頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件 工業(yè)管理軟件開(kāi)發(fā)基礎(chǔ)-平臺(tái)配置-平臺(tái)編輯器使用介紹_第2頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件 工業(yè)管理軟件開(kāi)發(fā)基礎(chǔ)-平臺(tái)配置-平臺(tái)編輯器使用介紹_第3頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件 工業(yè)管理軟件開(kāi)發(fā)基礎(chǔ)-平臺(tái)配置-平臺(tái)編輯器使用介紹_第4頁(yè)
MES開(kāi)發(fā)與應(yīng)用 課件 工業(yè)管理軟件開(kāi)發(fā)基礎(chǔ)-平臺(tái)配置-平臺(tái)編輯器使用介紹_第5頁(yè)
已閱讀5頁(yè),還剩47頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

3.4平臺(tái)通用配置深圳市信息職業(yè)技術(shù)學(xué)院——平臺(tái)編輯器使用介紹String類(lèi)型編輯器數(shù)值類(lèi)型編輯器時(shí)間類(lèi)型編輯器引用類(lèi)型編輯器通用編輯器介紹枚舉類(lèi)型編輯器圖片編輯器Bool類(lèi)型編輯器快碼編輯器知識(shí)回顧實(shí)體介紹;實(shí)體屬性及實(shí)體屬性特性;實(shí)體特性;實(shí)體配置;視圖介紹;視圖配置;視圖屬性配置;知識(shí)擴(kuò)展;學(xué)習(xí)目標(biāo)通過(guò)本節(jié)學(xué)習(xí)可以:掌握框架實(shí)現(xiàn)的通用編輯器包括哪些?能夠區(qū)分什么類(lèi)型的屬性使用什么編輯器?掌握平臺(tái)不同編輯器的使用;掌握編輯器屬性的配置使用。01通用編輯器介紹編輯器介紹編輯器介紹框架實(shí)現(xiàn)的編輯器包括:文本編輯器、數(shù)值編輯器、下拉編輯器、枚舉編輯器、復(fù)選框編輯器、時(shí)間類(lèi)型編輯器、圖片編輯器和快碼編輯器。String類(lèi)型的屬性框架默認(rèn)使用的編輯器為文本編輯器:UseTextEditor();Bool類(lèi)型的屬性框架默認(rèn)使用的編輯器為復(fù)選框編輯器:UseCheckEditor();枚舉類(lèi)型的屬性框架默認(rèn)使用的是枚舉編輯器:UseEnumEditor();數(shù)值類(lèi)型的屬性框架默認(rèn)使用的是數(shù)值編輯器:UseSpinEditor();時(shí)間類(lèi)型的屬性框架默認(rèn)使用的是日期時(shí)間編輯器:UseDateTimeEditor();引用類(lèi)型的屬性框架默認(rèn)使用的是下拉列表編輯器:UsePagingLookUpEditor();編輯器注意事項(xiàng)編輯器注意事項(xiàng)框架編輯器的使用依賴(lài)于屬性的類(lèi)型,如框架默認(rèn)下拉編輯器只能使用在引用屬性,在其他類(lèi)型中使用下拉列表編輯器會(huì)報(bào)錯(cuò)。如果不設(shè)置編輯器的具體參數(shù),框架默認(rèn)會(huì)根據(jù)屬性的類(lèi)型去讀取對(duì)應(yīng)的編輯器來(lái)展示,不需要額外進(jìn)行指定對(duì)應(yīng)的編輯器。所有的編輯器都有ColumnXType(列的類(lèi)型)和XType(控件類(lèi)型),用于對(duì)編輯器進(jìn)行重寫(xiě),ColumnXType和XType綁定的值為控件js文件的別名。02String類(lèi)型編輯器String類(lèi)型編輯器String類(lèi)型屬性使用的編輯器即為文本編輯器。文本編輯器包含如下幾種: 1、字符串屬性編輯器UseTextEditor():框架string類(lèi)型屬性默認(rèn)的編輯器常用參數(shù):AllowBlank(是否允許為空)、MaxLength(最大長(zhǎng)度)、MasLengthText(最大長(zhǎng)度驗(yàn)證失敗提示信息)、MinLenght(最小長(zhǎng)度)、MinLenghtText(最小長(zhǎng)度驗(yàn)證失敗提示信息) 2、密碼編輯器:UsePasswordEditor();常用參數(shù):AllowBlank(是否允許為空)、MaxLength(最大長(zhǎng)度)、MasLengthText(最大長(zhǎng)度驗(yàn)證失敗提示信息)、MinLenght(最小長(zhǎng)度)、MinLenghtText(最小長(zhǎng)度驗(yàn)證失敗提示信息)。 3、大文本編輯器:UseMemoEditor();常用參數(shù):AllowBlank(是否允許為空)String類(lèi)型編輯器03數(shù)值類(lèi)型編輯器數(shù)值類(lèi)型編輯器數(shù)值類(lèi)型編輯器:UseSpinEditor()常用參數(shù):AllowBlank(是否允許為空)、MaxValue(最大值)、MinValue(最小值)、AllowDecimals(是否允許為小數(shù))、DecimalPrecision(小數(shù)位數(shù))、AllowNegative(是否允許為負(fù)數(shù))、Step(增量設(shè)置)。說(shuō)明: 1、整數(shù)類(lèi)型的屬性使用數(shù)值編輯器,沒(méi)有小數(shù)位數(shù),也不能設(shè)置小數(shù)位數(shù); 2、浮點(diǎn)類(lèi)型的屬性使用數(shù)值編輯器,默認(rèn)三位小數(shù),增量默認(rèn)為0.001;數(shù)值類(lèi)型編輯器思考題數(shù)值類(lèi)型的編輯器要使增量失效,可以怎么做?可以設(shè)置數(shù)值編輯器的Step為0,即.UseSpinEditor(p=>p.Step=0)。04時(shí)間類(lèi)型編輯器日期時(shí)間編輯器屬性類(lèi)型為DateTime的屬性使用的編輯器為時(shí)間類(lèi)型編輯器,時(shí)間類(lèi)型的編輯器包括:日期時(shí)間編輯器、日期編輯器、時(shí)間編輯器和日期范圍編輯器。1、日期時(shí)間編輯器:UseDateTimeEditor(),使用該編輯器顯示格式為:年月日時(shí)分秒。常用參數(shù):AllowBlank(是否允許為空)、MaxValue(最大值)、MinValue(最小值)。默認(rèn)值設(shè)置:設(shè)置為當(dāng)前時(shí)間使用示例:View.Property(p=>p.EffectiveStartTime).DefaultValue(DateTime.Now.ToString("yyyy/MM/ddHH:mm:ss")).UseDateTimeEditor()日期時(shí)間編輯器日期編輯器2、日期編輯器:UseDateEditor(),使用該編輯器顯示格式為:年月日常用參數(shù):Format(日期格式化)、AllowBlank(是否允許為空)、MaxValue(最大值)、MinValue(最小值)。默認(rèn)值設(shè)置:設(shè)置為當(dāng)前日期為默認(rèn)值View.Property(p=>p.EffectiveStartTime).DefaultValue(System.DateTime.Today).UseDateEditor()格式化設(shè)置:View.Property(p=>p.Property7).UseDateEditor(p=>p.Format="Y/m/d");View.Property(p=>p.Property3).UseDateEditor(p=>p.Format="Y-m-d");日期編輯器時(shí)間編輯器3、時(shí)間編輯器:UseTimeEditor(),使用該編輯器顯示格式為:時(shí)分秒常用參數(shù):Format(日期格式化)、AllowBlank(是否允許為空)、MaxValue(最大值)、MinValue(最小值)。格式化設(shè)置:View.Property(p=>p.Property7).UseTimeEditor(p=>p.Format="H")View.Property(p=>p.Property3).UseTimeEditor(p=>p.Format="H:m:s")時(shí)間編輯器日期范圍編輯器4、日期范圍編輯器:UseDateRangeEditor()常用參數(shù):DateFormat(格式化)、AllowBlank(是否允許為空)、MaxValue(最大值)、MinValue(最小值)、DateRangeType(日期范圍類(lèi)型)、StartDate(開(kāi)始日期)、EndDate(結(jié)束日期)。使用示例:設(shè)置日期范圍默認(rèn)為當(dāng)前月View.Property(p=>p.UpdateDate).UseDateRangeEditor(p=>p.DateRangeType=ObjectModel.DateRangeType.Month);格式化設(shè)置:View.Property(p=>p.UpdateDate).UseDateRangeEditor(p=>{p.DateFormat="Y-m-d";});注意事項(xiàng):

1、日期范圍參數(shù)DateRangeType不設(shè)置,默認(rèn)為當(dāng)天; 2、如果是自定義查詢(xún)實(shí)體實(shí)現(xiàn)日期范圍的查詢(xún),查詢(xún)實(shí)體對(duì)應(yīng)使用日期范圍控件的數(shù)據(jù)類(lèi)型要設(shè)置為日期范圍DateRange;日期范圍編輯器05引用類(lèi)型編輯器引用類(lèi)型編輯器引用類(lèi)型編輯器使用的是下拉編輯器:UsePagingLookUpEditor()常用參數(shù):AllowBlank(是否允許為空)、DisplayField(顯示值)、BindDisplayField(顯示綁定的值,通常要與DisplayField一起使用)、DicLinkField(聯(lián)動(dòng)字段)、Editable(是否可編輯)、XType(控件的類(lèi)型)。必須要是引用屬性才能使用該編輯器如前面講的讀者管理的類(lèi)別號(hào)關(guān)聯(lián)的是讀者分類(lèi)的信息,讀者管理的類(lèi)別號(hào)用下拉列表實(shí)現(xiàn)。我們回顧下實(shí)現(xiàn)步驟:引用類(lèi)型編輯器引用類(lèi)型編輯器使用步驟 1、讀者管理的實(shí)體添加引用屬性,引用屬性關(guān)聯(lián)的實(shí)體為讀者分類(lèi)使用步驟引用類(lèi)型編輯器2、在讀者分類(lèi)的實(shí)體中配置顯示名稱(chēng),這步不做,會(huì)導(dǎo)致下拉選擇后無(wú)法顯示問(wèn)題使用步驟引用類(lèi)型編輯器3、在讀者分類(lèi)的界面中配置選擇視圖,這步不做或者配置的地方不對(duì),會(huì)導(dǎo)致下拉選擇的數(shù)據(jù)和列顯示異常。使用步驟引用類(lèi)型編輯器4、在讀者管理中使用下拉編輯器。注意:使用modelfirst建模生成的界面配置屬性的展示是用的引用屬性管理的實(shí)體進(jìn)行下拉關(guān)聯(lián)的,這里要改成用id,這樣改的目前是避免N+1查詢(xún)的問(wèn)題。使用步驟引用類(lèi)型編輯器5、效果。使用步驟思考題引用類(lèi)型編輯器需要根據(jù)條件展示數(shù)據(jù),應(yīng)該如何實(shí)現(xiàn)?引用屬性自定義編輯器的實(shí)現(xiàn)說(shuō)明:引用屬性下拉編輯器,項(xiàng)目使用場(chǎng)景較多的就是根據(jù)不同的條件展示下拉選擇數(shù)據(jù),這種需求通過(guò)重寫(xiě)數(shù)據(jù)源,處理數(shù)據(jù)加載部分即可滿(mǎn)足需求。使用步驟: 1、在界面端建一個(gè)擴(kuò)展靜態(tài)類(lèi),類(lèi)名以Extention結(jié)尾,如下:使用步驟引用屬性自定義編輯器的實(shí)現(xiàn)2、在靜態(tài)類(lèi)中實(shí)現(xiàn)自定義編輯器方法:

///

<summary>

///打印模板配置-標(biāo)簽?zāi)0寮?jí)聯(lián)編輯器

///

</summary>

///

<typeparam

name="T">實(shí)體類(lèi)型</typeparam>

///

<param

name="meta">屬性視圖元數(shù)據(jù)</param>

///

<param

name="action">委托</param>

///

<returns>泛型屬性視圖元數(shù)據(jù)</returns>

public

staticWebEntityPropertyViewMeta<T>UseLabelPrintTemplateEditor<T>(thisWebEntityPropertyViewMeta<T>meta,Action<PagingLookUpBaseConfig>action=null)

{meta.UseDataSource((source,pagingInfo,keyword)=>

{

vartemplate=sourceasLabelPrintTemplate;

vartemplates=newEntityList<PrintTemplate>();

if(template==null||template.NumberRule==null)

returntemplates;

vartemplateList=RT.Service.Resolve<ItemController>().GetRuleInTemplates(template.NumberRuleId.Value,pagingInfo,keyword);

returntemplateList;}).UsePagingLookUpEditor(action);

returnmeta;

}使用步驟Source為數(shù)據(jù)源,即使用編輯器界面對(duì)應(yīng)的實(shí)體。符合條件的下拉選擇列表的數(shù)據(jù),數(shù)據(jù)類(lèi)型為EntityList。引用屬性自定義編輯器的實(shí)現(xiàn)3、后臺(tái)查詢(xún)數(shù)據(jù)庫(kù)方法的實(shí)現(xiàn):

public

virtualEntityList<PrintTemplate>GetRuleInTemplates(doubleruleId,PagingInfopagingInfo,stringkeyword)

{

varquery=Query<PrintTemplate>().LeftJoin<NumberRuleInTemplate>((x,y)=>x.Id==y.TemplateId).Where<NumberRuleInTemplate>((x,y)=>y.RuleId==ruleId);

if(!keyword.IsNullOrEmpty())query.Where(x=>x.EntityName.Contains(keyword)||x.FileName.Contains(keyword));

varresult=query.ToList(pagingInfo,newEagerLoadOptions().LoadWithViewProperty());

returnresult;

}使用步驟返回值要主要分頁(yè)和懶加載的問(wèn)題Keyword的查詢(xún)條件要與實(shí)體配置條件一致引用屬性自定義編輯器的實(shí)現(xiàn)4、ViewConfig使用自定義編輯器使用步驟引用屬性自定義編輯器的實(shí)現(xiàn)5、效果使用步驟06枚舉類(lèi)型編輯器枚舉類(lèi)型編輯器枚舉編輯器UseEnumEditor()常用參數(shù):AllowBlank(是否允許為空)。設(shè)置默認(rèn)值及使用:View.Property(p=>p.Type).DefaultValue((int)ItemType.Product).UseEnumEditor()

其中:Type的屬性類(lèi)型必須是枚舉,ItemType為枚舉,Product為枚舉的屬性;框架枚舉編輯器支持帶條件搜索,使用如下:

View.Property(p=>p.Type).UseEnumEditor("CriteriaEntity");枚舉類(lèi)型編輯器07圖片編輯器圖片編輯器圖片編輯器UseImageComponentEditor()說(shuō)明:框架圖片編輯器只能在表單中使用,列表使用不生效;使用圖片編輯器的屬性類(lèi)型只能是byte[];圖片編輯器雖然有參數(shù)Width(寬)、Height(高)等這些,但是一般我們?cè)赟howInDetail中設(shè)置相應(yīng)的參數(shù)效果會(huì)好些。圖片編輯器08Bool類(lèi)型編輯器Bool類(lèi)型編輯器復(fù)選框編輯器UseCheckEditor():框架bool類(lèi)型默認(rèn)的編輯器常用參數(shù):AllowBlank(是否允許為空)、Editable(是否可編輯)。使用:View.Property(p=>p.Check).UseCheckEditor();布爾下拉編輯器UseCheckDropDownEditor()常用參數(shù):AllowBlank(是否允許為空)、Editable(是否可編輯)。使用:

View.Property(p=>p.Check).UseCheckDropDownEditor();Bool類(lèi)型編輯器09快碼編輯器框架快碼功能介紹快碼可以理解為是動(dòng)態(tài)的枚舉或者是數(shù)據(jù)字典,在SMOM平臺(tái)中,做了一個(gè)快碼的功能包含主表和從表,用于維護(hù)這些基礎(chǔ)數(shù)據(jù),主表的數(shù)據(jù)不能在界面維護(hù),需要在程序中實(shí)現(xiàn)或者是在數(shù)據(jù)庫(kù)中處理,從表的數(shù)據(jù)可在界面中維護(hù);而框架做的快碼編輯器就是通過(guò)快碼主表的編碼做查詢(xún)條件,將滿(mǎn)足條件的明細(xì)數(shù)據(jù)篩選出來(lái)展示在快碼下拉編輯器中??蚣芸齑a功能介紹快碼的應(yīng)用場(chǎng)景控制邏輯標(biāo)識(shí):使用快碼可以對(duì)復(fù)雜的邏輯結(jié)構(gòu)進(jìn)行標(biāo)識(shí)和記錄,方便對(duì)其進(jìn)行維護(hù)和修改;生產(chǎn)過(guò)程監(jiān)控:使用快碼可以方便標(biāo)識(shí)并追蹤生產(chǎn)流程中的各個(gè)環(huán)節(jié)和產(chǎn)出物的信息,從而提高生產(chǎn)效率和質(zhì)量;需求調(diào)研和功能設(shè)計(jì)階段,對(duì)一些類(lèi)型的分類(lèi)不明確或者是分類(lèi)較多的,使用枚舉開(kāi)發(fā)這類(lèi)需求會(huì)存在反復(fù)改代碼的問(wèn)題;如果所有這類(lèi)需求都用基礎(chǔ)數(shù)據(jù)界面維護(hù),功能開(kāi)發(fā)會(huì)較多且不利于維護(hù)數(shù)據(jù);基于這種場(chǎng)景考慮,框架引入了快碼這個(gè)功能,專(zhuān)門(mén)處理這種場(chǎng)景的業(yè)務(wù)需求??齑a的應(yīng)用場(chǎng)景快碼功能主表數(shù)據(jù)的添加從快碼功能菜單可以看出,快碼主表的數(shù)據(jù)是不能在界面中進(jìn)行維護(hù)的,而快碼編輯器獲取的是對(duì)應(yīng)主表下的所有明細(xì)數(shù)據(jù)。所以我們?cè)谑褂镁庉嬈髦耙葘⒖齑a主表的數(shù)據(jù)維護(hù)起來(lái)。主表數(shù)據(jù)的維護(hù)提供兩種方式: 1、通過(guò)數(shù)據(jù)庫(kù)腳本的方式執(zhí)行:這種方式必須掌握; 2、在程序中通過(guò)程序添加數(shù)據(jù):這種方式要清楚原理,能看懂代碼??齑a功能主表數(shù)據(jù)的添加快碼功能主表數(shù)據(jù)的添加快碼和快碼明細(xì)對(duì)應(yīng)的表

快碼主表名:BD_CATALOG_TYPE;快碼明細(xì)表名:BD_CATALOGOracle執(zhí)行腳本:insertintoBD_CATALOG_TYPE(ID,CODE,CREATE_BY,CREATE_DATE,DESCRIPTION,INV_ORG_ID,IS_PHANTOM,NAME,SYNC_ID,UPDATE_BY,UPDATE_DATE)values(100060,

'Lib_Unit',100000,sysdate,N'單位',

1,

'0',

N'單位',

60,

100000,sysdate);

SQLServer執(zhí)行腳本:insert

intoBD_CATALOG_TYPE

(ID,CODE,CREATE_BY,CREATE_DATE,

DESCRIPTION,INV_ORG_ID,IS_PHANTOM,

NAME,SYNC_ID,UPDATE_BY,UPDATE_DATE)values(100060,

'Lib_Unit',100000,

GETDATE(),

N'單位',

1,

'0',

N'單位',

60,

100000,GETDATE());說(shuō)明:Code值的設(shè)置為英文,且唯一,快碼使用時(shí)會(huì)用這個(gè)編碼作為條件;庫(kù)存組織INV_ORG_ID設(shè)置值為1(其他的庫(kù)存組織對(duì)應(yīng)的快碼通過(guò)快碼功能的“同步”按鈕實(shí)現(xiàn)),是否假刪除IS_PHANTOM為0;ID和SYNC_ID唯一即可;創(chuàng)建人CREATE_BY和修改人UPDATE_BY找員工維護(hù)對(duì)應(yīng)存在數(shù)據(jù)的id即可。數(shù)據(jù)庫(kù)腳本執(zhí)行思考題快碼主表數(shù)據(jù)通過(guò)程序添加是如何進(jìn)行實(shí)現(xiàn)的?快碼功能主表數(shù)據(jù)的添加在服務(wù)端工程添加一個(gè)初始化數(shù)據(jù)的類(lèi),這個(gè)類(lèi)的命名是根據(jù)時(shí)間戳進(jìn)行命名的,即前面部分名稱(chēng)必須為“_年月日_時(shí)分秒”的格式,如下所示:程序代碼添加實(shí)現(xiàn)步驟說(shuō)明:SMOM框架去執(zhí)行這個(gè)初始化類(lèi)時(shí),如果有其他的初始化類(lèi)的時(shí)間戳更大些,該類(lèi)會(huì)執(zhí)行不到,所以定義時(shí)間戳?xí)r盡量設(shè)置大些??齑a功能主表數(shù)據(jù)的添加初始化類(lèi)繼承:ManualDbMigration,重寫(xiě)屬性獲取數(shù)據(jù)庫(kù)DbSetting和類(lèi)型Type;重寫(xiě)數(shù)據(jù)庫(kù)升級(jí)的方法Up程序代碼添加實(shí)現(xiàn)步驟快碼功能主表數(shù)據(jù)的添加運(yùn)行項(xiàng)目升級(jí)數(shù)據(jù)庫(kù)注意事項(xiàng)初始化快碼組的數(shù)據(jù)初始化類(lèi)時(shí)間戳必須為整個(gè)解決方案最新;使用了初始化數(shù)據(jù)的服務(wù)端工程,必須要有單獨(dú)的數(shù)據(jù)提供者;升級(jí)數(shù)據(jù)庫(kù)的時(shí)候必須勾選全部數(shù)據(jù)庫(kù);項(xiàng)目上如何沒(méi)有硬性要求,可直接通過(guò)SQL方式往數(shù)據(jù)庫(kù)快碼組表的插入數(shù)據(jù),快碼組數(shù)據(jù)的編碼與在實(shí)體中建的常量的默認(rèn)值保持一致;程序代碼添加實(shí)現(xiàn)步驟思考題快碼編輯器是如何使用的?快碼編輯器的使用快碼的使用以單

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論