版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3.4平台通用配置深圳市信息职业技术学院——平台编辑器使用介绍String类型编辑器数值类型编辑器时间类型编辑器引用类型编辑器通用编辑器介绍枚举类型编辑器图片编辑器Bool类型编辑器快码编辑器知识回顾实体介绍;实体属性及实体属性特性;实体特性;实体配置;视图介绍;视图配置;视图属性配置;知识扩展;学习目标通过本节学习可以:掌握框架实现的通用编辑器包括哪些?能够区分什么类型的属性使用什么编辑器?掌握平台不同编辑器的使用;掌握编辑器属性的配置使用。01通用编辑器介绍编辑器介绍编辑器介绍框架实现的编辑器包括:文本编辑器、数值编辑器、下拉编辑器、枚举编辑器、复选框编辑器、时间类型编辑器、图片编辑器和快码编辑器。String类型的属性框架默认使用的编辑器为文本编辑器:UseTextEditor();Bool类型的属性框架默认使用的编辑器为复选框编辑器:UseCheckEditor();枚举类型的属性框架默认使用的是枚举编辑器:UseEnumEditor();数值类型的属性框架默认使用的是数值编辑器:UseSpinEditor();时间类型的属性框架默认使用的是日期时间编辑器:UseDateTimeEditor();引用类型的属性框架默认使用的是下拉列表编辑器:UsePagingLookUpEditor();编辑器注意事项编辑器注意事项框架编辑器的使用依赖于属性的类型,如框架默认下拉编辑器只能使用在引用属性,在其他类型中使用下拉列表编辑器会报错。如果不设置编辑器的具体参数,框架默认会根据属性的类型去读取对应的编辑器来展示,不需要额外进行指定对应的编辑器。所有的编辑器都有ColumnXType(列的类型)和XType(控件类型),用于对编辑器进行重写,ColumnXType和XType绑定的值为控件js文件的别名。02String类型编辑器String类型编辑器String类型属性使用的编辑器即为文本编辑器。文本编辑器包含如下几种: 1、字符串属性编辑器UseTextEditor():框架string类型属性默认的编辑器常用参数:AllowBlank(是否允许为空)、MaxLength(最大长度)、MasLengthText(最大长度验证失败提示信息)、MinLenght(最小长度)、MinLenghtText(最小长度验证失败提示信息) 2、密码编辑器:UsePasswordEditor();常用参数:AllowBlank(是否允许为空)、MaxLength(最大长度)、MasLengthText(最大长度验证失败提示信息)、MinLenght(最小长度)、MinLenghtText(最小长度验证失败提示信息)。 3、大文本编辑器:UseMemoEditor();常用参数:AllowBlank(是否允许为空)String类型编辑器03数值类型编辑器数值类型编辑器数值类型编辑器:UseSpinEditor()常用参数:AllowBlank(是否允许为空)、MaxValue(最大值)、MinValue(最小值)、AllowDecimals(是否允许为小数)、DecimalPrecision(小数位数)、AllowNegative(是否允许为负数)、Step(增量设置)。说明: 1、整数类型的属性使用数值编辑器,没有小数位数,也不能设置小数位数; 2、浮点类型的属性使用数值编辑器,默认三位小数,增量默认为0.001;数值类型编辑器思考题数值类型的编辑器要使增量失效,可以怎么做?可以设置数值编辑器的Step为0,即.UseSpinEditor(p=>p.Step=0)。04时间类型编辑器日期时间编辑器属性类型为DateTime的属性使用的编辑器为时间类型编辑器,时间类型的编辑器包括:日期时间编辑器、日期编辑器、时间编辑器和日期范围编辑器。1、日期时间编辑器:UseDateTimeEditor(),使用该编辑器显示格式为:年月日时分秒。常用参数:AllowBlank(是否允许为空)、MaxValue(最大值)、MinValue(最小值)。默认值设置:设置为当前时间使用示例:View.Property(p=>p.EffectiveStartTime).DefaultValue(DateTime.Now.ToString("yyyy/MM/ddHH:mm:ss")).UseDateTimeEditor()日期时间编辑器日期编辑器2、日期编辑器:UseDateEditor(),使用该编辑器显示格式为:年月日常用参数:Format(日期格式化)、AllowBlank(是否允许为空)、MaxValue(最大值)、MinValue(最小值)。默认值设置:设置为当前日期为默认值View.Property(p=>p.EffectiveStartTime).DefaultValue(System.DateTime.Today).UseDateEditor()格式化设置:View.Property(p=>p.Property7).UseDateEditor(p=>p.Format="Y/m/d");View.Property(p=>p.Property3).UseDateEditor(p=>p.Format="Y-m-d");日期编辑器时间编辑器3、时间编辑器:UseTimeEditor(),使用该编辑器显示格式为:时分秒常用参数:Format(日期格式化)、AllowBlank(是否允许为空)、MaxValue(最大值)、MinValue(最小值)。格式化设置:View.Property(p=>p.Property7).UseTimeEditor(p=>p.Format="H")View.Property(p=>p.Property3).UseTimeEditor(p=>p.Format="H:m:s")时间编辑器日期范围编辑器4、日期范围编辑器:UseDateRangeEditor()常用参数:DateFormat(格式化)、AllowBlank(是否允许为空)、MaxValue(最大值)、MinValue(最小值)、DateRangeType(日期范围类型)、StartDate(开始日期)、EndDate(结束日期)。使用示例:设置日期范围默认为当前月View.Property(p=>p.UpdateDate).UseDateRangeEditor(p=>p.DateRangeType=ObjectModel.DateRangeType.Month);格式化设置:View.Property(p=>p.UpdateDate).UseDateRangeEditor(p=>{p.DateFormat="Y-m-d";});注意事项:
1、日期范围参数DateRangeType不设置,默认为当天; 2、如果是自定义查询实体实现日期范围的查询,查询实体对应使用日期范围控件的数据类型要设置为日期范围DateRange;日期范围编辑器05引用类型编辑器引用类型编辑器引用类型编辑器使用的是下拉编辑器:UsePagingLookUpEditor()常用参数:AllowBlank(是否允许为空)、DisplayField(显示值)、BindDisplayField(显示绑定的值,通常要与DisplayField一起使用)、DicLinkField(联动字段)、Editable(是否可编辑)、XType(控件的类型)。必须要是引用属性才能使用该编辑器如前面讲的读者管理的类别号关联的是读者分类的信息,读者管理的类别号用下拉列表实现。我们回顾下实现步骤:引用类型编辑器引用类型编辑器使用步骤 1、读者管理的实体添加引用属性,引用属性关联的实体为读者分类使用步骤引用类型编辑器2、在读者分类的实体中配置显示名称,这步不做,会导致下拉选择后无法显示问题使用步骤引用类型编辑器3、在读者分类的界面中配置选择视图,这步不做或者配置的地方不对,会导致下拉选择的数据和列显示异常。使用步骤引用类型编辑器4、在读者管理中使用下拉编辑器。注意:使用modelfirst建模生成的界面配置属性的展示是用的引用属性管理的实体进行下拉关联的,这里要改成用id,这样改的目前是避免N+1查询的问题。使用步骤引用类型编辑器5、效果。使用步骤思考题引用类型编辑器需要根据条件展示数据,应该如何实现?引用属性自定义编辑器的实现说明:引用属性下拉编辑器,项目使用场景较多的就是根据不同的条件展示下拉选择数据,这种需求通过重写数据源,处理数据加载部分即可满足需求。使用步骤: 1、在界面端建一个扩展静态类,类名以Extention结尾,如下:使用步骤引用属性自定义编辑器的实现2、在静态类中实现自定义编辑器方法:
///
<summary>
///打印模板配置-标签模板级联编辑器
///
</summary>
///
<typeparam
name="T">实体类型</typeparam>
///
<param
name="meta">属性视图元数据</param>
///
<param
name="action">委托</param>
///
<returns>泛型属性视图元数据</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为数据源,即使用编辑器界面对应的实体。符合条件的下拉选择列表的数据,数据类型为EntityList。引用属性自定义编辑器的实现3、后台查询数据库方法的实现:
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;
}使用步骤返回值要主要分页和懒加载的问题Keyword的查询条件要与实体配置条件一致引用属性自定义编辑器的实现4、ViewConfig使用自定义编辑器使用步骤引用属性自定义编辑器的实现5、效果使用步骤06枚举类型编辑器枚举类型编辑器枚举编辑器UseEnumEditor()常用参数:AllowBlank(是否允许为空)。设置默认值及使用:View.Property(p=>p.Type).DefaultValue((int)ItemType.Product).UseEnumEditor()
其中:Type的属性类型必须是枚举,ItemType为枚举,Product为枚举的属性;框架枚举编辑器支持带条件搜索,使用如下:
View.Property(p=>p.Type).UseEnumEditor("CriteriaEntity");枚举类型编辑器07图片编辑器图片编辑器图片编辑器UseImageComponentEditor()说明:框架图片编辑器只能在表单中使用,列表使用不生效;使用图片编辑器的属性类型只能是byte[];图片编辑器虽然有参数Width(宽)、Height(高)等这些,但是一般我们在ShowInDetail中设置相应的参数效果会好些。图片编辑器08Bool类型编辑器Bool类型编辑器复选框编辑器UseCheckEditor():框架bool类型默认的编辑器常用参数:AllowBlank(是否允许为空)、Editable(是否可编辑)。使用:View.Property(p=>p.Check).UseCheckEditor();布尔下拉编辑器UseCheckDropDownEditor()常用参数:AllowBlank(是否允许为空)、Editable(是否可编辑)。使用:
View.Property(p=>p.Check).UseCheckDropDownEditor();Bool类型编辑器09快码编辑器框架快码功能介绍快码可以理解为是动态的枚举或者是数据字典,在SMOM平台中,做了一个快码的功能包含主表和从表,用于维护这些基础数据,主表的数据不能在界面维护,需要在程序中实现或者是在数据库中处理,从表的数据可在界面中维护;而框架做的快码编辑器就是通过快码主表的编码做查询条件,将满足条件的明细数据筛选出来展示在快码下拉编辑器中。框架快码功能介绍快码的应用场景控制逻辑标识:使用快码可以对复杂的逻辑结构进行标识和记录,方便对其进行维护和修改;生产过程监控:使用快码可以方便标识并追踪生产流程中的各个环节和产出物的信息,从而提高生产效率和质量;需求调研和功能设计阶段,对一些类型的分类不明确或者是分类较多的,使用枚举开发这类需求会存在反复改代码的问题;如果所有这类需求都用基础数据界面维护,功能开发会较多且不利于维护数据;基于这种场景考虑,框架引入了快码这个功能,专门处理这种场景的业务需求。快码的应用场景快码功能主表数据的添加从快码功能菜单可以看出,快码主表的数据是不能在界面中进行维护的,而快码编辑器获取的是对应主表下的所有明细数据。所以我们在使用编辑器之前要先将快码主表的数据维护起来。主表数据的维护提供两种方式: 1、通过数据库脚本的方式执行:这种方式必须掌握; 2、在程序中通过程序添加数据:这种方式要清楚原理,能看懂代码。快码功能主表数据的添加快码功能主表数据的添加快码和快码明细对应的表
快码主表名:BD_CATALOG_TYPE;快码明细表名:BD_CATALOGOracle执行脚本: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执行脚本: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());说明:Code值的设置为英文,且唯一,快码使用时会用这个编码作为条件;库存组织INV_ORG_ID设置值为1(其他的库存组织对应的快码通过快码功能的“同步”按钮实现),是否假删除IS_PHANTOM为0;ID和SYNC_ID唯一即可;创建人CREATE_BY和修改人UPDATE_BY找员工维护对应存在数据的id即可。数据库脚本执行思考题快码主表数据通过程序添加是如何进行实现的?快码功能主表数据的添加在服务端工程添加一个初始化数据的类,这个类的命名是根据时间戳进行命名的,即前面部分名称必须为“_年月日_时分秒”的格式,如下所示:程序代码添加实现步骤说明:SMOM框架去执行这个初始化类时,如果有其他的初始化类的时间戳更大些,该类会执行不到,所以定义时间戳时尽量设置大些。快码功能主表数据的添加初始化类继承:ManualDbMigration,重写属性获取数据库DbSetting和类型Type;重写数据库升级的方法Up程序代码添加实现步骤快码功能主表数据的添加运行项目升级数据库注意事项初始化快码组的数据初始化类时间戳必须为整个解决方案最新;使用了初始化数据的服务端工程,必须要有单独的数据提供者;升级数据库的时候必须勾选全部数据库;项目上如何没有硬性要求,可直接通过SQL方式往数据库快码组表的插入数据,快码组数据的编码与在实体中建的常量的默认值保持一致;程序代码添加实现步骤思考题快码编辑器是如何使用的?快码编辑器的使用快码的使用以单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵阳幼儿师范高等专科学校《动画场景设计》2023-2024学年第一学期期末试卷
- 2025山西省安全员C证(专职安全员)考试题库
- 硅湖职业技术学院《面向对象技术》2023-2024学年第一学期期末试卷
- 2025甘肃省建筑安全员考试题库
- 广州幼儿师范高等专科学校《绿色建筑与绿色施工》2023-2024学年第一学期期末试卷
- 2025年四川建筑安全员-B证(项目经理)考试题库
- 广州卫生职业技术学院《温病学》2023-2024学年第一学期期末试卷
- 2025贵州建筑安全员B证(项目经理)考试题库
- 2025黑龙江省安全员-C证(专职安全员)考试题库
- 《ESD知识和控制》课件
- GB/T 9119-2000平面、突面板式平焊钢制管法兰
- 2020年《小学德育教育校本课程》版
- 办公用品供货项目实施方案
- 牛津译林版(2019) 必修第三册 Unit 4 Scientists Who Changed the World Extended reading 课件
- 销售价格管理制度(5篇)
- 乙肝五项详解
- 人教版七年级历史上册复习资料-考点重点-版
- 福建省厦门市各县区乡镇行政村村庄村名明细及行政区划代码
- 解析简易呼吸器课件
- 国际商法(第四版)
- 标准化计量基础知识
评论
0/150
提交评论