ttk-app-core
Version:
enterprise develop framework
387 lines (385 loc) • 11.5 kB
JavaScript
import moment from 'moment'
export function getMeta() {
return {
name: 'root',
component: 'Layout',
className: 'app-asset-list',
children: [{
name: 'tablesetting',
component: 'TableSettingCard',
data: '{{data.other.columnDto}}',
visible: '{{data.showTableSetting}}',
showTitle: '{{false}}',
positionClass: 'app-asset-list-content',
confirmClick: '{{function(data){$showTableSetting({value: false, data: data})}}}',
cancelClick: '{{function(){$closeTableSetting()}}}',
resetClick: '{{function(){$resetTableSetting({data: data})}}}'
},{
name: 'header',
component: '::div',
className: 'app-asset-list-header',
children: [{
name: 'accountQuery',
title: 'accountQuery',
className: 'app-asset-list-accountQuery',
component: 'SearchCard',
refName: 'accountQuery',
searchClick: '{{function(value){$searchValueChange(value)}}}',
cancelClick: '{{function(value){$searchCancelChange(value)}}}',
clearClick: '{{function(value){$clearValueChange(value)}}}',
onChange: '{{function(value){$searchValueChange(value)}}}',
didMount:'{{function(childrenRef){$getSearchCard(childrenRef)}}}',
refreshBtn: {
name: 'refreshBtn',
component: 'Icon',
fontFamily: 'edficon',
type: 'shuaxin',
className: 'mk-normalsearch-reload',
onClick: '{{$refresh}}'
},
confirmBtn:{
hidden: false,
text: '查询'
},
cancelBtn: {
hidden: false,
text: '取消'
},
clearBtn: {
hidden: false,
text: '清空'
},
menuBtn:[{
name: 'add',
component: 'Button',
type: 'primary',
children: '新增',
className: 'btn',
onClick: '{{$newClick}}'
}, {
name: 'batch',
component: 'Dropdown',
overlay: {
name: 'menu',
component: 'Menu',
onClick: '{{$moreMenuClick}}',
children: [{
name: 'depreciation',
component: 'Menu.Item',
className: "app-asset-list-depreciation",
key: 'depreciation',
children: '折旧摊销清单'
},{
name: 'disposal',
component: 'Menu.Item',
className: "app-asset-list-disposal",
key: 'disposal',
children: '已处置资产清单'
},{
name: 'del',
component: 'Menu.Item',
className: "app-asset-list-del",
key: 'del',
children: '卡片删除'
}]
},
children: {
name: 'internal',
component: 'Button',
className:'app-asset-list-header-more',
children: [{
name: 'word',
component: '::span',
children: '更多'
},{
name: 'more',
component: 'Icon',
type: 'down'
}]
}
}, {
name: 'print',
component: 'Icon',
fontFamily: 'edficon',
className: 'btn print',
type: 'dayin',
onClick: '{{$print}}',
title: '打印',
style: {
fontSize: 28,
lineHeight: '30px'
},
}, {
name: 'import',
component: 'Icon',
fontFamily: 'edficon',
className: 'btn export',
type: 'daoru',
title: '导入',
onClick: '{{$imports}}',
style: {
fontSize: 28,
lineHeight: '28px'
},
}, {
name: 'export',
component: 'Icon',
fontFamily: 'edficon',
className: 'btn export',
type: 'daochu',
title: '导出',
onClick: '{{$exports}}',
style: {
fontSize: 28,
lineHeight: '28px'
},
}],
normalSearcChildren: [{
name: 'assetProperty',
component: 'Select',
showSearch: false,
className: 'app-asset-list-header-assetProperty asset-header-select',
value: '{{data.form.assetProperty && data.form.assetProperty.value}}',
onChange: `{{function(v){$assetPropertyChange('data.form.assetProperty',data.other.assetProperty.filter(function(o){return o.value == v})[0])}}}`,
children: {
name: 'option',
component: 'Select.Option',
className: 'active-asset-option',
value: '{{data.other.assetProperty && data.other.assetProperty[_rowIndex].value }}',
title: '{{data.other.assetProperty && data.other.assetProperty[_rowIndex].label }}',
children: '{{data.other.assetProperty && data.other.assetProperty[_rowIndex].label }}',
_power: 'for in data.other.assetProperty'
}
}, {
name: 'assetClass',
component: 'Select',
showSearch: false,
className: 'app-asset-list-header-assetClass asset-header-select',
value: '{{data.form.assetClass && data.form.assetClass.value}}',
onChange: `{{function(v){$assetClassChange('data.form.assetClass',data.other.assetClass.filter(function(o){return o.value == v})[0])}}}`,
children: {
name: 'option',
component: 'Select.Option',
className: 'active-asset-option',
value: '{{data.other.assetClass && data.other.assetClass[_rowIndex].value }}',
title: '{{data.other.assetClass && data.other.assetClass[_rowIndex].label}}',
children: '{{data.other.assetClass && data.other.assetClass[_rowIndex].label }}',
_power: 'for in data.other.assetClass'
}
}],
normalSearch:[],
moreSearch: '{{data.other.oldSearchValue}}',
treeSelect: [{
name: "treeSelect",
component: '::div',
className: 'select-tree',
children: [{
name: "treeSelect",
component: '::span',
className: 'select-tree-label',
children: "资产分类"
},{
name: 'assetProperty',
component: 'Select',
showSearch: false,
className: 'app-asset-list-header-assetProperty',
value: '{{data.searchValue.assetProperty && data.searchValue.assetProperty.value}}',
onChange: `{{function(v){$assetPropertyChange('data.searchValue.assetProperty',data.other.assetProperty.filter(function(o){return o.value == v})[0])}}}`,
children: {
name: 'option',
component: 'Select.Option',
//className: 'active-asset-option',
value: '{{data.other.assetProperty && data.other.assetProperty[_rowIndex].value }}',
children: '{{data.other.assetProperty && data.other.assetProperty[_rowIndex].label }}',
_power: 'for in data.other.assetProperty'
}
}, {
name: 'assetClass',
component: 'Select',
showSearch: false,
className: 'app-asset-list-header-assetClass',
value: '{{data.searchValue.assetClass && data.searchValue.assetClass.value}}',
onChange: `{{function(v){$assetClassChange('data.searchValue.assetClass',data.other.assetClass.filter(function(o){return o.value == v})[0])}}}`,
children: {
name: 'option',
component: 'Select.Option',
//className: 'active-asset-option',
value: '{{data.other.assetClass && data.other.assetClass[_rowIndex].value }}',
children: '{{data.other.assetClass && data.other.assetClass[_rowIndex].label }}',
_power: 'for in data.other.assetClass'
}
}]
}],
moreSearchItem: [{
name: 'date',
range: true,
label: '开始使用日期',
centerContent: '到',
isTime: true,
pre: {
name: 'startDate',
type: 'DatePicker',
// mode: ['month', 'month'],
// format: "YYYY-MM",
allowClear: true,
// noClear: true,
decoratorDate: '{{function(value, value2){return $disabledDateDay(value, value2, "pre")}}}',
},
next: {
name: 'endDate',
type: 'DatePicker',
// mode: ['month', 'month'],
// format: "YYYY-MM",
allowClear: true,
// noClear: true,
decoratorDate: '{{function(value, value2){return $disabledDateDay(value, value2, "next")}}}',
}
}, {
name: 'assets',
label: '资产',
type: 'Select',
showSearch: '{{true}}',
childType: 'Option',
optionFilterProp:"children",
filterOption: '{{$filterOptionSummary}}',
title: '{{data.other.assets}}',
option: '{{data.other.assets}}',
allowClear: true,
onchange: '{{function(v){$selectAsset(v)}}}'
}, {
name: 'assetAddType',
label: '增加方式',
type: 'Select',
childType: 'Option',
option: '{{data.other.assetAddType}}',
allowClear: true,
onchange: '{{function(v){$assetAddType(v)}}}'
}, {
name: 'deprMethod',
label: '折旧方法',
type: 'Select',
childType: 'Option',
option: '{{data.other.deprMethod}}',
allowClear: true,
onchange: '{{function(v){$deprMethod(v)}}}'
}, {
name: 'state',
label: '资产状态',
type: 'Select',
childType: 'Option',
option: '{{data.other.assetState}}',
allowClear: false,
noClear: true,
onchange: '{{function(v){$assetState(v)}}}'
}/*, {
name: 'hasDisposalAsset',
label: '',
type: 'Checkbox.Group',
render: '{{$renderCheckBox}} ',
allowClear: true
}*/],
}]
}, {
name: 'content',
component: 'Layout',
className: 'app-asset-list-content',
children: [{
name: 'dataGrid',
component: 'DataGrid',
headerHeight: 37,
isColumnResizing: true,
rowHeight: 37,
ellipsis: true,
onColumnResizeEnd: '{{$onColumnResizeEnd}}',
loading: '{{data.other.loading}}',
rowsCount: "{{$getListRowsCount()}}",
columns: "{{$getColumns()}}",
}]
}, {
name: 'footer',
component: '::div',
className: 'app-list-account-footer',
// children: [{
// name: 'pagination',
// component: 'Pagination',
// showSizeChanger: true,
// pageSize: '{{data.page.pageSize}}',
// current: '{{data.page.current}}',
// total: '{{data.page.total}}',
// onChange: '{{$pageChanged}}',
// onShowSizeChange: '{{$pageChanged}}',
// }]
children: [{
name: 'pagination',
component: 'Pagination',
showSizeChanger: true,
pageSizeOptions: ['50', '100', '150', '200'],
pageSize: '{{data.page.pageSize}}',
current: '{{data.page.current}}',
total: '{{data.page.total}}',
onChange: '{{$pageChanged}}',
onShowSizeChange: '{{$pageChanged}}'
}]
}]
}
}
export function getInitState() {
return {
data: {
list: [],
showTableSetting:false,
searchValue: {
//hasDisposalAsset: 0,
//endDate: moment().endOf('month'),
//startDate: moment().startOf('month'),
state: 0
},
filter: {
//hasDisposalAsset: 0,
page: {pageSize: 50, currentPage: 1}
},
form: {
},
other: {
enabledGuide: false,
assets: [],
assetAddType: [],
assetClassId: [],
deprMethod: [],
loading: false, //grid加载状态
oldSearchValue: {
//hasDisposalAsset: 0,
//endDate: moment().endOf('month'),
//startDate: moment().startOf('month'),
state: 0
},
columnDto: [],
assetState: [{
label: '全部',
value: 0
},{
label: '草稿',
value: 1
},{
label: '正常',
value: 2
},{
label: '已处置',
value: 3
}],
isColumnSolution: true,
isCardEdit: true,
managementConfirm: true,
sort: {
userOrderField: null,
order: null
},
},
page: {
current: 1,
total: 0,
pageSize: 50
},
}
}
}