Commit 6a05b2c7 authored by 左玲玲's avatar 左玲玲 😬

设备台账

parent 1c6fb9a4
......@@ -312,7 +312,13 @@ export default [
path: '/lease/custom',
icon: '',
component: './lease/custom',
}
},
{
name: '租赁台账',
path: '/lease/ledger',
icon: '',
component: './lease/ledger',
},
],
},
];
......@@ -586,7 +586,7 @@ function LinkSelect({ item, colProps, formRef, name, curindex }) {
formRef?.current?.setFieldsValue({ [curkey]: ifclean });
}
return item.showAll ? [{ label: '全部', value: 'all' }, ...(res?.data?.dataList ?? [])] : [];
return item.showAll ? [{ label: '全部', value: 'all' }, ...(res?.data?.dataList ?? [])] : (res?.data?.dataList ?? []);
}}
showSearch
/>
......@@ -611,7 +611,7 @@ function NolinkSelect({ item, colProps }) {
options = {
request: async (params) => {
let list = await doFetch({ url: curoption?.path, params: curoption?.params });
return item.showAll ? [{ label: '全部', value: 'all' }, ...(list?.data?.dataList ?? [])] : [];
return item.showAll ? [{ label: '全部', value: 'all' }, ...(list?.data?.dataList ?? [])] : (list?.data?.dataList ?? []);
},
};
}
......
......@@ -329,7 +329,7 @@ function TreeRender({
return dataLists;
}
return (
<div style={{ ...style }}>
<div style={{ ...style }} className='treenode'>
<Modal
{...modal}
onCancel={() => {
......
......@@ -542,3 +542,10 @@ ol {
margin-bottom: 24px;
}
}
.treenode {
.ant-tree-title {
display: flex !important;
align-items: center;
}
}
\ No newline at end of file
import React, { useMemo } from 'react';
import DetailPro from '@/components/DetailPro';
import getcolumns from './columns';
const Basemsg = ({ drawer }) => {
const columns = useMemo(() => {
let defcolumn = getcolumns()?.columns ?? [];
return defcolumn;
}, []);
return <DetailPro
fields={columns}
detailpath="/"
params={{ id: drawer?.item?.id }}
/>
}
export default Basemsg;
\ No newline at end of file
import React, { useMemo } from 'react';
import DetailPro from '@/components/DetailPro';
import AutoTable from '@/components/AutoTable/mtable';
import { Tooltip } from "antd";
const Leaseresume = ({ setdrawer, drawer }) => {
const columns = [
{
title: '客户名称',
dataIndex: 'f1',
key: 'f1',
},
{
title: '开始租赁日期',
dataIndex: 'f3',
key: 'f3',
valueType: 'dateRange',
},
{
title: '实际结束日期',
dataIndex: 'f4',
key: 'f4',
valueType: 'dateRange',
},
{
title: '相关单号',
dataIndex: 'f2',
key: 'f2',
render: (_, row) => {
return (
<Tooltip title={row.f2}>
<a
className="table-cell"
onClick={() => {
}}
>
{row.f2}
</a>
</Tooltip>
);
}
},
];
return (
<AutoTable
columns={columns}
path={'/'}
resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none"
bordered={false}
/>
);
};
export default Leaseresume;
import React, { useMemo } from 'react';
import DetailPro from '@/components/DetailPro';
import AutoTable from '@/components/AutoTable/mtable';
import { Tooltip } from "antd";
const Operatinghistory = ({ setdrawer, drawer }) => {
const columns = useMemo(() => {
return [
{
title: '操作时间',
dataIndex: 'f3',
key: 'f3',
valueType: 'dateRange',
},
{
title: '操作人',
dataIndex: 'f4',
key: 'f4'
},
{
title: '操作类型',
dataIndex: 'f20',
key: 'f20',
valueType: 'select',
options: drawer.item.f12 == 1 ? [
{ label: '闲置', value: '1' },
{ label: '预占', value: '2' },
{ label: '租赁', value: '3' },
{ label: '待复检', value: '4' },
{ label: '报废', value: '5' },
{ label: '新增', value: '6' },
{ label: '销售', value: '8' },
] : [
{ label: '报废', value: '5' },
{ label: '未绑定', value: '6' },
{ label: '绑定', value: '7' },
{ label: '新增', value: '8' },
]
},
];
}, [drawer.item]);
return (
<AutoTable
columns={columns}
path={'/'}
resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none"
bordered={false}
/>
);
};
export default Operatinghistory;
import React, { useMemo } from 'react';
import DetailPro from '@/components/DetailPro';
import AutoTable from '@/components/AutoTable/mtable';
const Resume = ({ setdrawer, drawer }) => {
const columns = [
{
title: '设备编号',
dataIndex: 'f1',
key: 'f1',
},
{
title: '设备名称',
dataIndex: 'f2',
key: 'f2',
},
{
title: '绑定时间',
dataIndex: 'f3',
key: 'f3',
valueType: 'dateRange',
},
{
title: '解绑时间',
dataIndex: 'f4',
key: 'f4',
valueType: 'dateRange',
},
];
return (
<AutoTable
columns={columns}
path={'/'}
resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none"
bordered={false}
/>
);
};
export default Resume;
import { Tooltip, Image } from 'antd';
function getcolumns(setdrawer) {
return {
columns: [
{
title: '设备编号',
dataIndex: 'f1',
key: 'f1',
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
colProps: { span: 8 },
},
{
title: '设备名称',
dataIndex: 'f2',
key: 'f2',
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
colProps: { span: 8 },
render: (_, row) => {
return (
<Tooltip title={row.f2}>
<a
className="table-cell"
onClick={() => {
setdrawer && setdrawer((s) => ({
...s,
visible: true,
item: row,
val: 'only',
title: '设备详情'
}));
}}
>
{row.f2}
</a>
</Tooltip>
);
}
},
{
title: '资产编号',
dataIndex: 'f3',
key: 'f3',
colProps: { span: 8 }
},
{
title: '关联设备',
dataIndex: 'f18',
key: 'f18',
hideInForm: true,
hideInDescriptions: true,
colProps: { span: 8 }
},
{
title: '设备品牌',
dataIndex: 'f4',
key: 'f4',
colProps: { span: 8 }
},
{
title: '设备型号',
dataIndex: 'f5',
key: 'f5',
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
valueType: 'select',
options: { path: '/', params: {} },
colProps: { span: 8 }
},
{
title: '公司名称',
dataIndex: 'f6',
key: 'f6',
hideInSearch: true,
hideInTable: true,
valueType: 'select',
options: { path: '/', params: {} },
colProps: { span: 8 }
},
{
title: '部门名称',
dataIndex: 'f7',
key: 'f7',
formItemProps: { rules: [{ required: false, message: '此项为必填项' }] },
hideInSearch: true,
hideInTable: true,
valueType: 'select',
options: { path: '/', linkParams: { f6: '' } },
colProps: { span: 8 }
},
{
title: '工厂名称',
dataIndex: 'factoryName',
key: 'factoryName',
valueType: 'input',
hideInSearch: true,
hideInTable: true,
hideInDescriptions: true,
colProps: { span: 8 },
fieldProps: {
disabled: true
}
},
{
title: '工厂名称',
dataIndex: 'factoryName',
key: 'factoryId',
valueType: 'select',
options: { path: '/auth/sysFactory/getAllFactorySelection', params: {} },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
hideInForm: true,
colProps: { span: 8 }
},
{
title: '车间名称',
dataIndex: 'shopName',
key: 'shopId',
hideInSearch: true,
hideInTable: true,
valueType: 'select',
options: { path: '/auth/sysShop/getShopSelectionByFactory', linkParams: { factoryId: '' } },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
colProps: { span: 8 }
},
{
title: '工段名称',
dataIndex: 'sectionName',
key: 'sectionId',
hideInSearch: true,
hideInTable: true,
valueType: 'select',
options: {
path: '/auth/sysSection/getAllSectionSelectionByShop',
linkParams: { shopId: '' },
},
colProps: { span: 8 }
},
{
title: '产线名称',
dataIndex: 'productionLineName',
key: 'productionLineId',
valueType: 'select',
hideInSearch: true,
hideInTable: true,
options: {
path: '/auth/sysProductionLine/getAllProductLineSelectionByShop',
linkParams: { shopId: '' },
},
colProps: { span: 8 }
},
{
title: '设备类型',
dataIndex: 'f12',
key: 'f12',
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
hideInSearch: false,
valueType: 'select',
options: [
{ label: '设备', value: '1' },
{ label: '智能单元', value: '2' },
],
colProps: { span: 8 }
},
{
title: '关联客户',
dataIndex: 'f19',
key: 'f19',
hideInSearch: false,
hideInTable: false,
hideInForm: true,
hideInDescriptions: true,
valueType: 'select',
options: { path: '/', params: {} },
colProps: { span: 8 }
},
{
title: '供应商',
dataIndex: 'f13',
key: 'f13',
valueType: 'select',
options: { path: '/', params: {} },
colProps: { span: 8 }
},
{
title: '保管单位',
dataIndex: 'f14',
key: 'f14',
colProps: { span: 8 }
},
{
title: '产权单位',
dataIndex: 'f15',
key: 'f15',
colProps: { span: 8 }
},
{
title: '上传图片',
dataIndex: 'f16',
key: 'f16',
hideInSearch: true,
hideInTable: true,
hideInDescriptions: true,
valueType: 'uploadImage',
fieldProps: {
limit: 1,
}
},
{
title: '图片',
dataIndex: 'f21',
key: 'f21',
hideInSearch: true,
render: (_, row) => {
return row.f21?.length && <Image src={row?.f21?.[0]?.url} />
}
},
{
title: '二维码',
dataIndex: 'f22',
key: 'f22',
hideInSearch: true,
render: (_, row) => {
return row.f22?.length && <Image src={row?.f22?.[0]?.url} />
}
},
{
title: '经营状态',
dataIndex: 'f20',
key: 'f20',
hideInForm: true,
valueType: 'select',
options: [
{ label: '闲置', value: '1' },
{ label: '预占', value: '2' },
{ label: '租赁', value: '3' },
{ label: '待复检', value: '4' },
{ label: '报废', value: '5' },
{ label: '未绑定', value: '6' },
{ label: '绑定', value: '7' },
{ label: '销售', value: '8' },
],
colProps: {
fixed: 'right'
}
},
],
pathconfig: {
add: '',
edit: '',
list: '',
delete: '',
},
};
}
export default getcolumns;
This diff is collapsed.
.ledgerbox {
width: 100%;
height: 100%;
overflow: hidden;
background-color: #fff;
display: flex;
flex-direction: column;
position: relative;
.ledgerheader {
width: 100%;
border-bottom: 1px solid #f0f0f0;
flex-shrink: 0;
}
.ledgercontent {
flex: 1;
width: 100%;
overflow: hidden;
display: flex;
justify-content: space-between;
.ledgerleft {
width: 300px;
display: flex;
flex-direction: column;
height: 100%;
overflow-y: hidden;
padding: 0 16px;
flex-shrink: 0;
}
.ledgerright {
flex: 1;
border-left: 1px solid #f0f0f0;
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment