ttk-app-core
Version:
enterprise develop framework
85 lines (74 loc) • 4.53 kB
JavaScript
import React from 'react'
function initColumn(columns, ...cellArr) {
let resColumn = [], className = ''
let leftArr = ['inventoryCode', 'inventoryName'],
centerArr = ['specification', 'unitName']
// 先插入一级节点
columns.forEach(item => {
if (!item.fieldParentName) {
if(leftArr.indexOf(item.fieldName)>-1) className = 'detail_left'
if(centerArr.indexOf(item.fieldName)>-1) className = 'detail_center'
let data = {
'title': item.fieldTitle,
'name': item.fieldName,
'dataIndex': item.fieldName,
'key': item.fieldName,
'className':className,
'render': item.fieldName=='inventoryName' ? cellArr[1]: cellArr[2],
'width': item.fieldName=='inventoryName' ? '198px': (item.fieldName=='specification' ? '100px':'80px'),
}
resColumn.push(data)
}
})
resColumn.forEach(item => {
let childData = [], isHe=false
let amountArr = ['periodBeginAmount','receiveAmount','temporaryEstimationAmount','backWashAmount','dispatchAmount','periodEndAmount']
columns.forEach(x => {
if (x.fieldParentName && x.fieldParentName === item.name) {
let data = {
'title': x.fieldTitle,
'name': x.fieldName,
'dataIndex': x.fieldName,
'key': x.fieldName,
'render': amountArr.indexOf(x.fieldName)>-1 ? cellArr[0] : cellArr[3]
}
childData.push(data)
}
})
if (childData && childData.length > 0) item.children = childData
})
return resColumn
}
export default function renderColumns(...cellArr) {
const columns = [
{ fieldName: 'inventoryCode', fieldTitle: '存货编码', fieldParentName: null },
{ fieldName: 'inventoryName', fieldTitle: '存货名称', fieldParentName: null },
{ fieldName: 'specification', fieldTitle: '规格型号', fieldParentName: null },
{ fieldName: 'unitName', fieldTitle: '计量单位', fieldParentName: null },
{ fieldName: 'initial', fieldTitle: '期初结存', fieldParentName: null },
{ fieldName: 'periodBeginQuantity', fieldTitle: '数量', fieldParentName: 'initial' },
{ fieldName: 'periodBeginPrice', fieldTitle: '单价', fieldParentName: 'initial' },
{ fieldName: 'periodBeginAmount', fieldTitle: '金额', fieldParentName: 'initial' },
{ fieldName: 'current', fieldTitle: '本期入库', fieldParentName: null },
{ fieldName: 'receiveQuantity', fieldTitle: '数量', fieldParentName: 'current' },
{ fieldName: 'receivePrice', fieldTitle: '单价', fieldParentName: 'current' },
{ fieldName: 'receiveAmount', fieldTitle: '金额', fieldParentName: 'current' },
{ fieldName: 'temporary', fieldTitle: '暂估入库', fieldParentName: null },
{ fieldName: 'temporaryEstimationQty', fieldTitle: '数量', fieldParentName: 'temporary' },
{ fieldName: 'temporaryEstimationPrice', fieldTitle: '单价', fieldParentName: 'temporary' },
{ fieldName: 'temporaryEstimationAmount', fieldTitle: '金额', fieldParentName: 'temporary' },
{ fieldName: 'recoil', fieldTitle: '暂估回冲', fieldParentName: null },
{ fieldName: 'backWashQty', fieldTitle: '数量', fieldParentName: 'recoil' },
{ fieldName: 'backWashPrice', fieldTitle: '单价', fieldParentName: 'recoil' },
{ fieldName: 'backWashAmount', fieldTitle: '金额', fieldParentName: 'recoil' },
{ fieldName: 'treasury', fieldTitle: '本期出库', fieldParentName: null },
{ fieldName: 'dispatchQuantity', fieldTitle: '数量', fieldParentName: 'treasury' },
{ fieldName: 'dispatchPrice', fieldTitle: '单价', fieldParentName: 'treasury' },
{ fieldName: 'dispatchAmount', fieldTitle: '金额', fieldParentName: 'treasury' },
{ fieldName: 'deposit', fieldTitle: '期末结存', fieldParentName: null },
{ fieldName: 'periodEndQuantity', fieldTitle: '数量', fieldParentName: 'deposit' },
{ fieldName: 'periodEndPrice', fieldTitle: '单价', fieldParentName: 'deposit' },
{ fieldName: 'periodEndAmount', fieldTitle: '金额', fieldParentName: 'deposit' },
]
return initColumn(columns, ...cellArr)
}