ttk-app-core
Version:
enterprise develop framework
386 lines (383 loc) • 10.6 kB
JavaScript
export function getMeta() {
return {
name: 'root',
component: 'Layout',
className: 'ttk-omp-app-message-list',
children: [
{
name: 'root-content',
component: 'Layout',
className: 'ttk-omp-app-message-list-backgroundColor',
children: [{
name: 'header',
component: '::div',
className: 'ttk-omp-app-message-list-header',
children: [
// {
// name: 'line',
// component: '::span',
// style:{width:'110px'},
// className: 'ttk-omp-app-message-list-header-left line',
// children: '搜索功能待添加'
// },
/*{
name: 'dataSelect1',
component: 'DatePicker',
className: 'ttk-omp-app-message-list-header-left selectDate',
onChange: '{{$dateSelect}}'
}, {
name: 'line',
component: '::span',
className: 'ttk-omp-app-message-list-header-left line',
children: '-'
}, {
name: 'dataSelect1',
component: 'DatePicker',
className: 'ttk-omp-app-message-list-header-left selectDate marginRight',
onChange: '{{$dateSelect2}}'
}, {
name: 'select',
component: 'Select',
className: 'ttk-omp-app-message-list-header-left marginRight selectClear',
placeholder: '请选择产品',
allowClear: true,
onChange: `{{function(v){!!v ? $sf('data.searchValue.appId',data.appName.filter(function(data){return data.id == v})[0].id) : $sf('data.searchValue.appId','')}}}`,
children: {
name: 'option',
component: 'Select.Option',
value: "{{data.appName &&data.appName[_rowIndex].id}}",
children: '{{data.appName && data.appName[_rowIndex].name}}',
_power: 'for in data.appName'
}
}, {
name: 'companyName',
component: 'Input',
className: 'ttk-omp-app-message-list-header-left input companyInput marginRight',
placeholder: "请输入企业名称",
value: '{{data.searchValue.orgName}}',
onChange: `{{function(e){$sf('data.searchValue.orgName',e.target.value)}}}`,
}, {
name: 'tel',
component: 'Input',
className: 'ttk-omp-app-message-list-header-left input marginRight',
placeholder: "请输入手机号",
value: '{{data.searchValue.mobile}}',
onChange: `{{function(e){$sf('data.searchValue.mobile',e.target.value)}}}`,
},*/ {
name: 'btnGroup',
component: 'Layout',
className: 'ttk-omp-app-message-list-header-right',
children: [/*{
name: 'add',
component: 'Button',
children: '搜索',
type: 'primary',
className: 'btn',
onClick: '{{$search}}'
}, */{
name: 'export',
component: 'Button',
onClick: '{{$export}}',
className: 'exportIconBtn',
children: [{
name: 'more',
component: 'Icon',
fontFamily: 'edficon',
type: 'daochu',
title: '导出',
style: {
fontSize: '28px'
},
}]
}]
}]
},
{
name: 'content',
component: 'Layout',
className: 'ttk-omp-app-message-list-content',
children: [{
name: 'dataGrid',
component: 'DataGrid',
ellipsis: true,
headerHeight: 37,
rowHeight: 37,
isColumnResizing: false,
loading: '{{data.other.loading}}',
className: '{{$heightCount()}}',
startSequence: '{{(data.pagination.currentPage-1)*data.pagination.pageSize + 1}}',
rowsCount: "{{$getListRowsCount()}}",
columns: [{
name: 'sequence',
component: 'DataGrid.Column',
columnKey: 'sequence',
width: 50,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '序号'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
value: "{{data.list[_rowIndex].sequence}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'appName',
component: 'DataGrid.Column',
columnKey: 'appName',
width: 120,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '产品'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].appName}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'messageTypeName',
component: 'DataGrid.Column',
columnKey: 'messageTypeName',
width: 100,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '消息类型'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].messageTypeName}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'versionNum',
component: 'DataGrid.Column',
columnKey: 'versionNum',
width: 50,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '版本号'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].versionNum}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'title',
component: 'DataGrid.Column',
columnKey: 'title',
width: 180,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '消息标题'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].title}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'content',
component: 'DataGrid.Column',
columnKey: 'content',
width: 377,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '消息内容'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].content}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'sendTime',
component: 'DataGrid.Column',
columnKey: 'sendTime',
width: 120,
flexGrow: 1,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '消息发出时间'
},
cell: {
name: 'cell',
component: "DataGrid.Cell",
tip: true,
className: 'mk-datagrid-cellContent-left',
value: "{{data.list[_rowIndex].sendTime}}",
_power: '({rowIndex})=>rowIndex',
}
}, {
name: 'operation',
component: 'DataGrid.Column',
columnKey: 'operation',
width: 100,
header: {
name: 'header',
component: 'DataGrid.Cell',
children: '操作'
},
cell: {
name: 'cell',
component: 'DataGrid.Cell',
style: { display: 'flex' },
_power: '({rowIndex})=>rowIndex',
children: [{
name: 'isEnable',
component: 'Icon',
fontFamily: 'edficon',
type: 'chakan',
style: {
fontSize: 22,
// marginRight: '4px'
},
title: '{{"预览"}}',
onClick: '{{function(){$preview(data.list[_rowIndex], _rowIndex)}}}'
}, {
name: 'update',
component: 'Icon',
fontFamily: 'edficon',
type: 'bianji',
style: {
fontSize: 22
},
title: '编辑',
onClick: '{{function(){$edit(data.list[_rowIndex])}}}'
}, {
name: 'remove',
component: 'Icon',
fontFamily: 'edficon',
type: 'shanchu',
style: {
fontSize: 22
},
title: '删除',
onClick: '{{function(){$delete(data.list[_rowIndex])}}}'
}]
}
}]
}]
}]
},
{
name: 'footer',
component: '::div',
className: 'ttk-omp-app-message-list-footer',
children: [{
name: 'pagination',
component: 'Pagination',
showSizeChanger: true,
pageSize: '{{data.pagination.pageSize}}',
current: '{{data.pagination.current}}',
total: '{{data.pagination.total}}',
onChange: '{{$pageChanged}}',
onShowSizeChange: '{{$pageChanged}}',
}]
},
{
name: 'modalcontainer',
component: '::div',
_visible: '{{data.showModal}}',
className: 'ttk-omp-app-message-list-modalContainer',
children: [{
name: 'shandow',
component:'::div',
className: 'ttk-omp-app-message-list-modalContainer-shadow',
onClick: '{{$hideModal}}',
}, {
name: 'modal',
component: '::div',
className: 'ttk-omp-app-message-list-modalContainer-modal',
children: [{
name: 'modalTitle',
component: '::div',
className: 'modalTitle',
children: [{
name: 'title',
component: '::span',
className: 'title',
children: '{{data.modalTitle}}',
}, {
name: 'close',
component: 'Icon',
className: 'close',
fontFamily: 'edficon',
type: 'guanbi',
onClick: '{{$hideModal}}'
}]
}, {
name: 'modalBody',
component: '::div',
className: 'modalBody',
children: '{{data.modalData}}'
// children: '{{$getMessageContent()}}'
}, {
name: 'modalFooter',
component: '::div',
className: 'modalFooter',
children: [{
name: 'close',
component: 'Button',
type: 'primary',
children: '关闭',
onClick: '{{$hideModal}}'
}]
}]
}]
}]
}
}
export function getInitState() {
return {
data: {
showModal:false,
modalTitle: '',
modalData:'',
list: [],
searchValue: {
endDate: null, //期间终止
beginDate: null, //期间起始
orgName: null, //公司名
mobile: '', //电话
appId: null //产品 id
},
pagination: {
current: 1,
total: 0,
pageSize: 50
},
columns: []
}
}
}