182 lines
3.5 KiB
TypeScript
182 lines
3.5 KiB
TypeScript
import { BasicColumn } from '/@/components/Table'
|
|
import { FormSchema } from '/@/components/Table'
|
|
import { getTownAgriculturalBasic } from '/@/api/sys/user'
|
|
export const columns: BasicColumn[] = [
|
|
{
|
|
title: '基地名称',
|
|
dataIndex: 'base_name',
|
|
},
|
|
{
|
|
title: '农作物名称',
|
|
dataIndex: 'crop_name',
|
|
},
|
|
{
|
|
title: '年份',
|
|
dataIndex: 'time_year',
|
|
customRender: ({ text }) => {
|
|
return text + '年'
|
|
},
|
|
},
|
|
{
|
|
title: '季度',
|
|
dataIndex: 'quarter',
|
|
},
|
|
{
|
|
title: '产量',
|
|
dataIndex: 'yield',
|
|
},
|
|
{
|
|
title: '产值',
|
|
dataIndex: 'output',
|
|
},
|
|
{
|
|
title: '耕种面积',
|
|
dataIndex: 'cultivated',
|
|
},
|
|
{
|
|
width: 180,
|
|
title: '操作',
|
|
dataIndex: 'action',
|
|
align: 'center',
|
|
fixed: undefined,
|
|
},
|
|
]
|
|
|
|
export const searchFormSchema: FormSchema[] = [
|
|
{
|
|
field: 'year',
|
|
label: '年份',
|
|
component: 'DatePicker',
|
|
componentProps: {
|
|
picker: 'year',
|
|
mode: 'year',
|
|
},
|
|
colProps: { span: 8 },
|
|
},
|
|
{
|
|
field: 'quarter',
|
|
label: '季度',
|
|
component: 'Select',
|
|
componentProps: {
|
|
options: [
|
|
{ label: '第一季度', value: '1' },
|
|
{ label: '第二季度', value: '2' },
|
|
{ label: '第三季度', value: '3' },
|
|
{ label: '第四季度', value: '4' },
|
|
],
|
|
},
|
|
colProps: { span: 8 },
|
|
},
|
|
// {
|
|
// field: 'crop',
|
|
// label: '农作物',
|
|
// component: 'ApiSelect',
|
|
// componentProps: {
|
|
// api: async () => {
|
|
// const res = await getcrops({ type: 'all', crop_type: 2 })
|
|
// return res.filter((e) => e.is_end == 1)
|
|
// },
|
|
// labelField: 'name',
|
|
// valueField: 'id',
|
|
// },
|
|
// colProps: { span: 6 },
|
|
// },
|
|
]
|
|
|
|
export const accountFormSchema: FormSchema[] = [
|
|
{
|
|
field: 'id',
|
|
label: 'ID',
|
|
required: false,
|
|
dynamicDisabled: true,
|
|
component: 'Input',
|
|
ifShow: ({ values }) => {
|
|
return !!values.id
|
|
},
|
|
},
|
|
{
|
|
label: '农作物',
|
|
field: 'crop_id',
|
|
slot: 'crop',
|
|
component: 'TreeSelect',
|
|
required: true,
|
|
},
|
|
{
|
|
field: 'base_id',
|
|
label: '区域',
|
|
component: 'ApiSelect',
|
|
required: true,
|
|
componentProps: {
|
|
api: async () => {
|
|
const res = await getTownAgriculturalBasic({ type: 2, page: 1, per_page: 99999 })
|
|
return res.data
|
|
},
|
|
labelField: 'name',
|
|
valueField: 'id',
|
|
},
|
|
},
|
|
{
|
|
field: 'time_year',
|
|
label: '年份',
|
|
component: 'DatePicker',
|
|
required: true,
|
|
componentProps: {
|
|
picker: 'year',
|
|
mode: 'year',
|
|
},
|
|
},
|
|
{
|
|
field: 'quarter',
|
|
label: '季度',
|
|
component: 'Select',
|
|
required: true,
|
|
componentProps: {
|
|
options: [
|
|
{ label: '第一季度', value: '1' },
|
|
{ label: '第二季度', value: '2' },
|
|
{ label: '第三季度', value: '3' },
|
|
{ label: '第四季度', value: '4' },
|
|
],
|
|
},
|
|
},
|
|
|
|
{
|
|
field: 'yield',
|
|
label: '产量',
|
|
required: true,
|
|
component: 'Input',
|
|
slot: 'yield',
|
|
},
|
|
{
|
|
field: 'output',
|
|
label: '产值',
|
|
required: true,
|
|
component: 'Input',
|
|
componentProps: {
|
|
suffix: '元',
|
|
type: 'number',
|
|
},
|
|
},
|
|
|
|
{
|
|
field: 'cultivated',
|
|
label: '耕种面积',
|
|
required: true,
|
|
component: 'Input',
|
|
componentProps: {
|
|
suffix: '亩',
|
|
type: 'number',
|
|
},
|
|
},
|
|
{
|
|
field: 'extends',
|
|
label: '',
|
|
required: false,
|
|
component: 'Input',
|
|
slot: 'extends',
|
|
ifShow: ({ values }) => {
|
|
return values?.extends?.length > 0
|
|
},
|
|
},
|
|
]
|