@Wahson
2017-06-11T14:51:52.000000Z
字数 1535
阅读 871
周报
- 后端
- 采购物流测试与bug修复,预计下周四灰度
- 采购物流测试跟进,与灰度监测
- 采购物流不变量维护
- polymer 2.0 迁移准备
- 前端元数据设计开发计划和目标
- 完成元数据结构设计
- 跟进数据结构,完成列表组件和弹窗组件开发
以下是元数据结构初稿:
// 构建 h2-list 的 metadata
config = {
domainId:"",
displayFields:[
{
fieldName:"", // 字段名
label:"" // 字段标签,用于表格头显示
}
],
datas:[ // 列表数据
{
entity: {
[fieldName1]:{
datatype, value, label, required, prompt // ...
},
[fieldName2]:{
// ...
},
// ...
},
actions:[] // 可操作列表
}
]
}
action = { // 操作
url:"", // 请求url
actionName:"", // 操作名,如发货
formFields:[], // 表单请求需要的字段
operType:"", // 操作类型: 1、dialog(弹框) 2、form(直接服务处理)
// dialogElem: "", // 弹框组件名,可选
dialogMeta: {
requestUrl: "", // 请求弹窗表格数据的url
dialogTitle: "" // 弹窗的标题
}
}
// h2-struct metadata
config = {
displayFields: [], // 显示项
editFields: [], // 编辑项
entity: {
[fieldName1]:{
datatype, value, label, required, prompt// ...
},
[fieldName2]:{
// ...
},
// ...
},
formUrl: ""
}
datatype = 类型(可选项)
1. string(length, max-length, min-length, regexp) // value是字符串
2. number(max, min) // value是数字
3. date(max, min , format) //value是日期的长整型
4. select( items,multi, displayField, valueField ) // value是当前选中的值
5. radio( items ,displayField, valueField ) // value是当前选中的值
6. grid( theads ) // value是表格的二维数组
举个栗子:
config = {
domainId:"",
displayFields:[
{
fieldName:"orderNo",
label:"订单编号"
}, {
fieldName:"deliveryType",
label:"送货方式"
}, {
fieldName:"status",
label:"状态"
}
],
datas:[ // 列表数据
{
entity: {
orderNo:{
datatype: "string",
value:"K2017060990653",
},
deliveryType: {
datatype: "string",
value:"供应商配送",
},
status:{
datatype: "string",
value: "未收款",
}
},
actions:[
{
operType: 2,
actionName:"新增预约单", // 操作名,如发货
dialogMeta: {
requestUrl: "/order/fetchDelivery.do",
dialogTitle: "新增预约单"
}
},
{
operType: 1,
url:"/order/cancel.do",
actionName:"取消",
formFields:["orderId"],
}
]
}
]
}