Commit a94fe98c authored by 左玲玲's avatar 左玲玲 😬

设备查看,设备台账,租赁合同

parent b9301c04
...@@ -119,6 +119,7 @@ function getcolumns(setdrawer, drawer) { ...@@ -119,6 +119,7 @@ function getcolumns(setdrawer, drawer) {
hideInSearch: true, hideInSearch: true,
valueType: 'digit', valueType: 'digit',
hideInTable: true, hideInTable: true,
precision: 0
}, },
{ {
title: '租赁设备', title: '租赁设备',
...@@ -127,12 +128,6 @@ function getcolumns(setdrawer, drawer) { ...@@ -127,12 +128,6 @@ function getcolumns(setdrawer, drawer) {
hideInSearch: true, hideInSearch: true,
valueType: 'formList', valueType: 'formList',
hideInTable: true, hideInTable: true,
initialValue: [
{
state: 'all',
title: '标题',
},
],
colProps: { colProps: {
xs: 24, xs: 24,
sm: 24, sm: 24,
...@@ -180,6 +175,7 @@ function getcolumns(setdrawer, drawer) { ...@@ -180,6 +175,7 @@ function getcolumns(setdrawer, drawer) {
colProps: { colProps: {
sm: 3, sm: 3,
}, },
min: 0.01
}, },
{ {
title: '智享价(元)', title: '智享价(元)',
...@@ -198,6 +194,7 @@ function getcolumns(setdrawer, drawer) { ...@@ -198,6 +194,7 @@ function getcolumns(setdrawer, drawer) {
colProps: { colProps: {
sm: 3, sm: 3,
}, },
min: 0.01
}, },
{ {
title: '返利金额(元)', title: '返利金额(元)',
...@@ -216,6 +213,10 @@ function getcolumns(setdrawer, drawer) { ...@@ -216,6 +213,10 @@ function getcolumns(setdrawer, drawer) {
colProps: { colProps: {
sm: 3, sm: 3,
}, },
fieldProps: {
disabled: true
},
min: 0.00
}, },
{ {
title: '押金(元)', title: '押金(元)',
...@@ -234,6 +235,7 @@ function getcolumns(setdrawer, drawer) { ...@@ -234,6 +235,7 @@ function getcolumns(setdrawer, drawer) {
colProps: { colProps: {
sm: 3, sm: 3,
}, },
min: 0.01
}, },
{ {
title: '备注', title: '备注',
...@@ -244,6 +246,8 @@ function getcolumns(setdrawer, drawer) { ...@@ -244,6 +246,8 @@ function getcolumns(setdrawer, drawer) {
}, },
} }
], ],
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
min: 1
}, },
{ {
title: '营销区域', title: '营销区域',
...@@ -299,10 +303,11 @@ function getcolumns(setdrawer, drawer) { ...@@ -299,10 +303,11 @@ function getcolumns(setdrawer, drawer) {
fieldProps: { fieldProps: {
limit: 5, limit: 5,
}, },
colProps: { span: 24 },
render: (_, row) => { render: (_, row) => {
return <Filedetail files={drawer?.val == 'only' ? row?.['contractFileList'] : (row?.['contractFileList']?.[0] ?? [])} /> return <Filedetail files={drawer?.val == 'only' ? row?.['contractFileList'] : (row?.['contractFileList']?.[0] ?? [])} />
} }
}, }
]; ];
return [ return [
{ {
......
...@@ -15,14 +15,15 @@ import { useRequest } from 'ahooks'; ...@@ -15,14 +15,15 @@ import { useRequest } from 'ahooks';
import { doFetch } from '@/utils/doFetch'; import { doFetch } from '@/utils/doFetch';
import Addform from '@/components/Addform'; import Addform from '@/components/Addform';
import Detail from '@/components/RepaireDetail/Detail'; import Detail from '@/components/RepaireDetail/Detail';
import dayjs from 'dayjs';
function Contract(props) { function Contract(props) {
let actionRef = useRef(), let actionRef = useRef(),
formRef = useRef(); formRef = useRef();
const [drawer, setdrawer] = useState({ const [drawer, setdrawer] = useState({
open: false, open: false,
}), }),
[activeTabKey, setactiveTabKey] = useState('1'); [activeTabKey, setactiveTabKey] = useState('1'),
[amount, camount] = useState(0);
const { run, loading } = useRequest(doFetch, { const { run, loading } = useRequest(doFetch, {
manual: true, manual: true,
...@@ -102,6 +103,22 @@ function Contract(props) { ...@@ -102,6 +103,22 @@ function Contract(props) {
let defpath = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.pathconfig ?? {}; let defpath = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.pathconfig ?? {};
return defpath; return defpath;
}, [activeTabKey]); }, [activeTabKey]);
const calculateContractAmount = (list = [], month = 0) => {
const sum = list?.reduce((prev, next) => {
return (prev * 100 + next * 100) / 100;
}, 0);
camount(month == 0 || month ? (sum * 100) * month / 100 : 0);
};
const changeList = (list = []) => {
list.forEach(it => {
if (it.unitPrice && it.zxPrice) {
it.rebatePrice = ((it.unitPrice ?? 0) * 100 - (it.zxPrice ?? 0) * 100) / 100;
} else {
it.rebatePrice = ''
}
});
return list;
};
return ( return (
<div style={{ position: 'relative' }}> <div style={{ position: 'relative' }}>
<AutoTable <AutoTable
...@@ -121,7 +138,19 @@ function Contract(props) { ...@@ -121,7 +138,19 @@ function Contract(props) {
setdrawer((s) => ({ setdrawer((s) => ({
...s, ...s,
open: true, open: true,
item: {}, item: {
registrationDate: dayjs().format('YYYY-MM-DD'),
contractEquipmentList: [
{
equipmentId: '',
unitPrice: '',
zxPrice: '',
rebatePrice: '',
deposit: '',
remark: ''
}
]
},
title: '新增', title: '新增',
val: 'add' val: 'add'
})); }));
...@@ -134,7 +163,6 @@ function Contract(props) { ...@@ -134,7 +163,6 @@ function Contract(props) {
setactiveTabKey(key); setactiveTabKey(key);
}} }}
/> />
<DrawerPro <DrawerPro
fields={columns} fields={columns}
detailpath={pathconfig?.detail || null} detailpath={pathconfig?.detail || null}
...@@ -151,12 +179,67 @@ function Contract(props) { ...@@ -151,12 +179,67 @@ function Contract(props) {
}} }}
{...drawer} {...drawer}
onFinish={(vals) => { onFinish={(vals) => {
if (drawer?.val == 'add') { console.log(vals);
run({ url: pathconfig?.add || '/add', params: { ...vals } }); // if (drawer?.val == 'add') {
} else if (drawer?.val == 'edit') { // run({ url: pathconfig?.add || '/add', params: { ...vals } });
run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } }); // } else if (drawer?.val == 'edit') {
// run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } });
// }
}}
onValuesChange={(changedValues, allValues) => {
for (let i in changedValues) {
if (i == 'contractEquipmentList' || i == 'tenancy') {
calculateContractAmount(allValues['contractEquipmentList']?.map(it => it.unitPrice ?? 0), allValues['tenancy']);
}
if (i == 'contractEquipmentList') {
let newList = changeList(allValues['contractEquipmentList']);
formRef?.current?.setFieldsValue({ ['contractEquipmentList']: newList });
setdrawer((s) => {
return {
...s,
item: { ...s.item, contractEquipmentList: newList }
}
})
}
} }
}} }}
submitter={{
render: (props, doms) => {
return [
<div key='render' className='spread' style={{ position: 'fixed', bottom: 12, width: 'calc(100% - 62px)' }}>
<div key='amount' style={{ color: 'red', fontSize: 16, fontWeight: 500 }}>
<span>合同金额(单位:元):</span>
<span>{amount}</span>
</div>,
<div>
<PremButton
key='rest'
btn={{
onClick: () => {
props.form?.resetFields()
},
style: { marginRight: 8 }
}}
>
重置
</PremButton>,
<PremButton
key='submit'
btn={{
type: "primary",
onClick: () => {
props.form?.submit?.()
},
}}
>
提交
</PremButton>,
</div>
</div>
];
},
}}
> >
{/* {selectType(drawer?.val)} */} {/* {selectType(drawer?.val)} */}
</DrawerPro> </DrawerPro>
......
...@@ -45,6 +45,10 @@ function getcolumns(setdrawer) { ...@@ -45,6 +45,10 @@ function getcolumns(setdrawer) {
options: { path: '/lease/umLeaseCustomer/getAllFactorySelection', params: {} }, options: { path: '/lease/umLeaseCustomer/getAllFactorySelection', params: {} },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] }, formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
colProps: { span: 8 }, colProps: { span: 8 },
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
}, },
{ title: '企业法人', dataIndex: 'enterpriseLegalPerson', key: 'enterpriseLegalPerson', colProps: { span: 8 }, hideInSearch: true }, { title: '企业法人', dataIndex: 'enterpriseLegalPerson', key: 'enterpriseLegalPerson', colProps: { span: 8 }, hideInSearch: true },
{ title: '联系电话', dataIndex: 'phone', key: 'phone', colProps: { span: 8 }, hideInSearch: true }, { title: '联系电话', dataIndex: 'phone', key: 'phone', colProps: { span: 8 }, hideInSearch: true },
......
...@@ -31,7 +31,7 @@ import dayjs from 'dayjs'; ...@@ -31,7 +31,7 @@ import dayjs from 'dayjs';
const { Sider, Content } = Layout; const { Sider, Content } = Layout;
function Account({ boxRef }) { function Account({ boxRef, extraparams }) {
const disabledDateOfDay = (current) => { const disabledDateOfDay = (current) => {
// Can not select days before today and today // Can not select days before today and today
return current && current > dayjs().endOf('day'); return current && current > dayjs().endOf('day');
...@@ -42,7 +42,6 @@ function Account({ boxRef }) { ...@@ -42,7 +42,6 @@ function Account({ boxRef }) {
[drawer, setDrawer] = useState({ [drawer, setDrawer] = useState({
open: false, open: false,
}), }),
[extraparams, setextraparams] = useState({}),
[currDrawer, setCurrDrawer] = useState({ [currDrawer, setCurrDrawer] = useState({
open: false, open: false,
}), }),
...@@ -571,13 +570,17 @@ function Account({ boxRef }) { ...@@ -571,13 +570,17 @@ function Account({ boxRef }) {
title: '图片', title: '图片',
dataIndex: 'pictureUrl', dataIndex: 'pictureUrl',
key: 'pictureUrl', key: 'pictureUrl',
render: (text, row) => <Image width={70} src={row.pictureUrl} />, render: (_, row) => {
return row?.pictureUrl ? <Image style={{ width: 40, height: 40, objectFit: 'contain', objectPosition: 'center' }} src={row?.pictureUrl} /> : '-'
}
}, },
{ {
title: '二维码', title: '二维码',
dataIndex: 'qrCodeUrl', dataIndex: 'qrCodeUrl',
key: 'qrCodeUrl', key: 'qrCodeUrl',
render: (text, row) => <Image width={70} src={row.qrCodeUrl} />, render: (_, row) => {
return row?.qrCodeUrl ? <Image style={{ width: 40, height: 40, objectFit: 'contain', objectPosition: 'center' }} src={row?.qrCodeUrl} /> : '-'
}
}, },
]; ];
const [newfieldscolumns, setnewfieldscolumns] = useState([]); const [newfieldscolumns, setnewfieldscolumns] = useState([]);
......
...@@ -2,55 +2,27 @@ import React, { useMemo } from 'react'; ...@@ -2,55 +2,27 @@ import React, { useMemo } from 'react';
import DetailPro from '@/components/DetailPro'; import DetailPro from '@/components/DetailPro';
import getcolumns from './columns'; import getcolumns from './columns';
import { doFetch } from '@/utils/doFetch'; import { doFetch } from '@/utils/doFetch';
import { useRequest } from 'ahooks';
const Basemsg = ({ drawer, activeKey, setdrawer }) => { const Basemsg = ({ drawer, activeKey, setdrawer }) => {
const columns = useMemo(() => { const columns = useMemo(() => {
let defcolumn = []; let defcolumn = getcolumns(setdrawer, activeKey)?.columns ?? [];
if (activeKey == 'item-1') {
defcolumn = getcolumns(setdrawer, activeKey)?.columns ?? [];
} else {
doFetch({ url: '/base/paFormField/queryList', params: { formId: '2' } }).then(res => {
if (res.code == '0000') {
let column = [];
res?.data?.dataList?.forEach?.((el) => {
column.push({
...selectValueType(el.fieldChar, el.valueList),
title: el.fieldName,
dataIndex: el.id,
key: el.id,
});
});
defcolumn = [...(getcolumns(setdrawer, activeKey)?.columns ?? []), ...column];
}
})
}
return defcolumn; return defcolumn;
}, [activeKey]); }, [activeKey]);
const detailData = useMemo(() => { const detailData = useRequest(async () => {
let data = {}; let res = await doFetch({ url: '/lease/umLeaseLedger/detail', params: { id: drawer?.item?.id } });
if (activeKey == 'item-1') { return res?.data?.data ?? {};
doFetch({ url: '/asset/equipment/detail', params: { id: drawer?.item?.id } }).then(res => { }, {
if (res.code == '0000') { refreshDeps: [drawer?.item?.id]
data = res?.data?.data ?? {}; })
}
})
} else {
doFetch({ url: '/asset/equipment/detail', params: { id: drawer?.item?.id } }).then(res => {
if (res.code == '0000') {
let obj = {};
res?.data?.data['equipmentCharList']?.forEach?.((it) => {
obj[it?.fieldId] = it?.fieldRealValue;
});
data = { ...(res?.data?.data ?? {}), ...obj };
}
})
}
return data;
}, [activeKey]);
return <DetailPro return <DetailPro
fields={columns} fields={columns}
detailData={detailData} detailData={detailData?.data ?? {}}
params={{ id: drawer?.item?.id }} params={{ id: drawer?.item?.id }}
/> />
} }
......
This diff is collapsed.
...@@ -15,10 +15,9 @@ const Devicedata = () => { ...@@ -15,10 +15,9 @@ const Devicedata = () => {
const [drawer, setdrawer] = useState({ const [drawer, setdrawer] = useState({
open: false, open: false,
}), }),
[extraparams, setextraparams] = useState({}),
[activeKey, catk] = useState('item-1'), [activeKey, catk] = useState('item-1'),
[currDrawer, setCurrDrawer] = useState({ [item2extraparams, citp] = useState({});
open: false,
});
const { run, loading, runAsync } = useRequest(doFetch, { const { run, loading, runAsync } = useRequest(doFetch, {
manual: true, manual: true,
onSuccess: (res, params) => { onSuccess: (res, params) => {
...@@ -36,16 +35,6 @@ const Devicedata = () => { ...@@ -36,16 +35,6 @@ const Devicedata = () => {
return defcolumn; return defcolumn;
}, [activeKey]); }, [activeKey]);
const items = useMemo(() => {
if (drawer.val == 'only') {
if (activeKey == 'item-1') {
return [
{ label: '基础信息', key: 'item-1', children: <Basemsg drawer={drawer} activeKey={activeKey} setdrawer={setdrawer} /> }
]
}
}
}, [drawer.val, activeKey]);
const tableItems = useMemo(() => { const tableItems = useMemo(() => {
return [ return [
{ {
...@@ -53,35 +42,64 @@ const Devicedata = () => { ...@@ -53,35 +42,64 @@ const Devicedata = () => {
key: 'item-1', key: 'item-1',
children: <AutoTable children: <AutoTable
columns={columns} columns={columns}
path='' path='/lease/umLeaseLedger/queryLeaseList'
actionRef={actionRef} actionRef={actionRef}
resizeable={false} resizeable={false}
dataSource={[{ 'f1': '111', 'f2': '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
bordered={false} bordered={false}
x={1500} x={1500}
toolBarRender={true}
formRef={formRef} formRef={formRef}
dataSourceFieldsChange={(val) => { dataSourceFieldsChange={(val) => {
console.log(val); console.log(val);
}} }}
extraparams={extraparams}
pagination={false}
/> />
}, },
{ {
label: '自主设备', label: '自主设备',
key: 'item-2', key: 'item-2',
children: <Account boxRef={boxRef} /> children: <Account boxRef={boxRef} extraparams={item2extraparams} />
} }
] ]
}, []); }, [extraparams]);
const onselecteTree = async (selectedKeys, e, alldata) => { const items = useMemo(() => {
// let params = { if (drawer.val == 'only') {
// treeNodeType: e.node.type, if (activeKey == 'item-1') {
// treeNodeKey: e.node.key, return [
// }; { label: '基础信息', key: 'item-1', children: <Basemsg drawer={drawer} activeKey={activeKey} setdrawer={setdrawer} /> }
// setextraparams(params); ]
}; }
}
}, [drawer.val, activeKey, drawer.item]);
const onselecteTree = (selectedKeys, e, alldata) => {
let params = {};
if (selectedKeys.length) {
switch (e.node.type) {
case 1:
params = { factoryId: e.node.key }
break;
case 2:
params = { shopId: e.node.key }
break;
case 3:
params = { sectionId: e.node.key }
break;
case 4:
params = { productionLineId: e.node.key }
break;
default:
params = {};
}
} else {
params = {}
}
citp(selectedKeys.length ? {
treeNodeType: e.node.type,
treeNodeKey: e.node.key,
} : {});
setextraparams(params);
};
return <div className={styles.ledgerbox} ref={boxRef}> return <div className={styles.ledgerbox} ref={boxRef}>
<div className={styles.ledgerheader}> <div className={styles.ledgerheader}>
<div className="ant-card-head" style={{ backgroundColor: 'white' }}> <div className="ant-card-head" style={{ backgroundColor: 'white' }}>
...@@ -97,7 +115,7 @@ const Devicedata = () => { ...@@ -97,7 +115,7 @@ const Devicedata = () => {
<TreeRender url="/auth/sysFactory/getTree" onselected={onselecteTree} noaction={true} /> <TreeRender url="/auth/sysFactory/getTree" onselected={onselecteTree} noaction={true} />
</div> </div>
<div className={`${styles.ledgerright} ledgerf`}> <div className={`${styles.ledgerright} ledgerf`}>
<Tabs activeKey={activeKey} onChange={(key) => { <Tabs destroyInactiveTabPane activeKey={activeKey} onChange={(key) => {
catk(key); catk(key);
}} items={tableItems} /> }} items={tableItems} />
</div> </div>
...@@ -117,7 +135,7 @@ const Devicedata = () => { ...@@ -117,7 +135,7 @@ const Devicedata = () => {
})); }));
}} }}
> >
<Tabs items={items} /> <Tabs destroyInactiveTabPane items={items} />
</DrawerPro> </DrawerPro>
</div> </div>
} }
......
...@@ -9,7 +9,7 @@ const Basemsg = ({ drawer }) => { ...@@ -9,7 +9,7 @@ const Basemsg = ({ drawer }) => {
}, []); }, []);
return <DetailPro return <DetailPro
fields={columns} fields={columns}
detailpath="/" detailpath="/lease/umLeaseLedger/detail"
params={{ id: drawer?.item?.id }} params={{ id: drawer?.item?.id }}
/> />
} }
......
...@@ -6,35 +6,35 @@ const Leaseresume = ({ setdrawer, drawer }) => { ...@@ -6,35 +6,35 @@ const Leaseresume = ({ setdrawer, drawer }) => {
const columns = [ const columns = [
{ {
title: '客户名称', title: '客户名称',
dataIndex: 'f1', dataIndex: 'customerName',
key: 'f1', key: 'customerName',
}, },
{ {
title: '开始租赁日期', title: '开始租赁日期',
dataIndex: 'f3', dataIndex: 'startLeaseTime',
key: 'f3', key: 'startLeaseTimeList',
valueType: 'dateRange', valueType: 'dateRange',
}, },
{ {
title: '实际结束日期', title: '实际结束日期',
dataIndex: 'f4', dataIndex: 'endLeaseTime',
key: 'f4', key: 'endLeaseTimeList',
valueType: 'dateRange', valueType: 'dateRange',
}, },
{ {
title: '相关单号', title: '相关单号',
dataIndex: 'f2', dataIndex: 'businessNo',
key: 'f2', key: 'businessNo',
render: (_, row) => { render: (_, row) => {
return ( return (
<Tooltip title={row.f2}> <Tooltip title={row.businessNo}>
<a <a
className="table-cell" className="table-cell"
onClick={() => { onClick={() => {
}} }}
> >
{row.f2} {row.businessNo}
</a> </a>
</Tooltip> </Tooltip>
); );
...@@ -44,11 +44,11 @@ const Leaseresume = ({ setdrawer, drawer }) => { ...@@ -44,11 +44,11 @@ const Leaseresume = ({ setdrawer, drawer }) => {
return ( return (
<AutoTable <AutoTable
columns={columns} columns={columns}
path={'/'} path={'/lease/umLeaseLedgerCustomer/queryList'}
resizeable={false} resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none" pageextra="none"
bordered={false} bordered={false}
extraparams={{ leaseLedgerId: drawer?.item?.id }}
/> />
); );
}; };
......
...@@ -7,33 +7,29 @@ const Operatinghistory = ({ setdrawer, drawer }) => { ...@@ -7,33 +7,29 @@ const Operatinghistory = ({ setdrawer, drawer }) => {
return [ return [
{ {
title: '操作时间', title: '操作时间',
dataIndex: 'f3', dataIndex: 'operateTime',
key: 'f3', key: 'operateTimeList',
valueType: 'dateRange', valueType: 'dateRange',
}, },
{ {
title: '操作人', title: '操作人',
dataIndex: 'f4', dataIndex: 'operateUserName',
key: 'f4' key: 'operateUserName'
}, },
{ {
title: '操作类型', title: '操作类型',
dataIndex: 'f20', dataIndex: 'operateTypeName',
key: 'f20', key: 'operateType',
valueType: 'select', valueType: 'select',
options: drawer.item.f12 == 1 ? [ options: drawer.item.equipmentType == 1 ? [
{ label: '闲置', value: '1' }, { label: '新增', value: '0' },
{ label: '预占', value: '2' }, { label: '绑定', value: '3' },
{ label: '租赁', value: '3' }, { label: '报废', value: '4' },
{ label: '待复检', value: '4' }, { label: '转闲置', value: '5' },
{ label: '报废', value: '5' },
{ label: '新增', value: '6' },
{ label: '销售', value: '8' },
] : [ ] : [
{ label: '报废', value: '5' }, { label: '新增', value: '0' },
{ label: '未绑定', value: '6' }, { label: '报废', value: '4' },
{ label: '绑定', value: '7' }, { label: '解绑', value: '6' }
{ label: '新增', value: '8' },
] ]
}, },
]; ];
...@@ -41,11 +37,11 @@ const Operatinghistory = ({ setdrawer, drawer }) => { ...@@ -41,11 +37,11 @@ const Operatinghistory = ({ setdrawer, drawer }) => {
return ( return (
<AutoTable <AutoTable
columns={columns} columns={columns}
path={'/'} path={'/lease/umLeaseLedgerOperate/queryList'}
resizeable={false} resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none" pageextra="none"
bordered={false} bordered={false}
extraparams={{ leaseLedgerId: drawer?.item?.id }}
/> />
); );
}; };
......
...@@ -4,35 +4,35 @@ const Resume = ({ setdrawer, drawer }) => { ...@@ -4,35 +4,35 @@ const Resume = ({ setdrawer, drawer }) => {
const columns = [ const columns = [
{ {
title: '设备编号', title: '设备编号',
dataIndex: 'f1', dataIndex: 'equipmentNo',
key: 'f1', key: 'equipmentNo',
}, },
{ {
title: '设备名称', title: '设备名称',
dataIndex: 'f2', dataIndex: 'equipmentName',
key: 'f2', key: 'equipmentName',
}, },
{ {
title: '绑定时间', title: '绑定时间',
dataIndex: 'f3', dataIndex: 'bindingTime',
key: 'f3', key: 'bindingTimeList',
valueType: 'dateRange', valueType: 'dateRange',
}, },
{ {
title: '解绑时间', title: '解绑时间',
dataIndex: 'f4', dataIndex: 'unBindingTime',
key: 'f4', key: 'unBindingTimeList',
valueType: 'dateRange', valueType: 'dateRange',
}, },
]; ];
return ( return (
<AutoTable <AutoTable
columns={columns} columns={columns}
path={'/'} path={'/lease/umLeaseLedgerEquipment/queryList'}
resizeable={false} resizeable={false}
dataSource={[{ f1: '111', f2: '222', id: 1, status: 1, f12: 1, intelligentUnit: '11' }]}
pageextra="none" pageextra="none"
bordered={false} bordered={false}
extraparams={{ leaseLedgerId: drawer?.item?.id }}
/> />
); );
}; };
......
...@@ -66,7 +66,11 @@ function getcolumns(setdrawer) { ...@@ -66,7 +66,11 @@ function getcolumns(setdrawer) {
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] }, formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
valueType: 'select', valueType: 'select',
options: { path: '/asset/equipmentModel/query/selection', params: {} }, options: { path: '/asset/equipmentModel/query/selection', params: {} },
colProps: { span: 8 } colProps: { span: 8 },
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
}, },
{ {
title: '设备类型', title: '设备类型',
...@@ -76,18 +80,36 @@ function getcolumns(setdrawer) { ...@@ -76,18 +80,36 @@ function getcolumns(setdrawer) {
hideInSearch: false, hideInSearch: false,
valueType: 'select', valueType: 'select',
options: [ options: [
{ label: '设备', value: '1' }, { label: '设备', value: 1 },
{ label: '智能单元', value: '2' }, { label: '智能单元', value: 2 },
], ],
colProps: { span: 8 } colProps: { span: 8 }
}, },
{
title: '经营状态',
dataIndex: 'statusName',
key: 'status',
hideInForm: true,
valueType: 'select',
options: [
{ label: '报废', value: '0' },
{ label: '预占', value: '1' },
{ label: '租赁', value: '2' },
{ label: '销售', value: '3' },
{ label: '闲置', value: '4' },
{ label: '待复检', value: '5' },
{ label: '未绑定', value: '6' },
{ label: '绑定', value: '7' },
],
fixed: 'right'
},
{ {
title: '所属信息', title: '所属信息',
valueType: 'split' valueType: 'split'
}, },
{ {
title: '公司名称', title: '公司名称',
dataIndex: 'organizationName', dataIndex: 'companyName',
key: 'organizationId', key: 'organizationId',
hideInSearch: true, hideInSearch: true,
hideInTable: true, hideInTable: true,
...@@ -103,21 +125,23 @@ function getcolumns(setdrawer) { ...@@ -103,21 +125,23 @@ function getcolumns(setdrawer) {
hideInSearch: true, hideInSearch: true,
hideInTable: true, hideInTable: true,
valueType: 'treeSelect', valueType: 'treeSelect',
options: { path: '/auth/sysDepartment/query/children/tree', linkParams: { organizationId: '' } }, options: { path: '/auth/sysDepartment/query/children/tree', linkParams: { organizationId: 'parentId' } },
colProps: { span: 8 } colProps: { span: 8 }
}, },
{ {
title: '工厂名称', title: '工厂名称',
dataIndex: 'factoryName', dataIndex: 'factoryName',
key: 'factoryName', key: 'factoryId',
valueType: 'input', valueType: 'select',
hideInSearch: true, hideInSearch: true,
hideInTable: true, hideInTable: true,
hideInDescriptions: true, hideInDescriptions: true,
colProps: { span: 8 }, colProps: { span: 8 },
options: { path: '/auth/sysFactory/getAllFactorySelection', params: {} },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
fieldProps: { fieldProps: {
disabled: true disabled: true
} },
}, },
{ {
title: '工厂名称', title: '工厂名称',
...@@ -125,9 +149,12 @@ function getcolumns(setdrawer) { ...@@ -125,9 +149,12 @@ function getcolumns(setdrawer) {
key: 'factoryId', key: 'factoryId',
valueType: 'select', valueType: 'select',
options: { path: '/auth/sysFactory/getAllFactorySelection', params: {} }, options: { path: '/auth/sysFactory/getAllFactorySelection', params: {} },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
hideInForm: true, hideInForm: true,
colProps: { span: 8 } colProps: { span: 8 },
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
}, },
{ {
title: '车间名称', title: '车间名称',
...@@ -138,7 +165,11 @@ function getcolumns(setdrawer) { ...@@ -138,7 +165,11 @@ function getcolumns(setdrawer) {
valueType: 'select', valueType: 'select',
options: { path: '/auth/sysShop/getShopSelectionByFactory', linkParams: { factoryId: '' } }, options: { path: '/auth/sysShop/getShopSelectionByFactory', linkParams: { factoryId: '' } },
formItemProps: { rules: [{ required: true, message: '此项为必填项' }] }, formItemProps: { rules: [{ required: true, message: '此项为必填项' }] },
colProps: { span: 8 } colProps: { span: 8 },
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
}, },
{ {
title: '工段名称', title: '工段名称',
...@@ -176,7 +207,11 @@ function getcolumns(setdrawer) { ...@@ -176,7 +207,11 @@ function getcolumns(setdrawer) {
valueType: 'select', valueType: 'select',
options: { path: '/lease/umLeaseCustomer/getSelection', params: {} }, options: { path: '/lease/umLeaseCustomer/getSelection', params: {} },
colProps: { span: 8 }, colProps: { span: 8 },
span: 3 span: 3,
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
}, },
{ {
title: '其他信息', title: '其他信息',
...@@ -188,7 +223,12 @@ function getcolumns(setdrawer) { ...@@ -188,7 +223,12 @@ function getcolumns(setdrawer) {
key: 'supplierId', key: 'supplierId',
valueType: 'select', valueType: 'select',
options: { path: '/lease/umEquipmentSupplier/getSelection', params: {} }, options: { path: '/lease/umEquipmentSupplier/getSelection', params: {} },
colProps: { span: 8 } colProps: { span: 8 },
fieldProps: {
placeholder: '请选择',
showSearch: true,
},
span: 1
}, },
{ {
title: '保管单位', title: '保管单位',
...@@ -221,7 +261,7 @@ function getcolumns(setdrawer) { ...@@ -221,7 +261,7 @@ function getcolumns(setdrawer) {
hideInSearch: true, hideInSearch: true,
hideInForm: true, hideInForm: true,
render: (_, row) => { render: (_, row) => {
return <Image src={row?.imageUrl} /> return row?.imageUrl ? <Image style={{ width: 40, height: 40, objectFit: 'contain', objectPosition: 'center' }} src={row?.imageUrl} /> : '-'
} }
}, },
{ {
...@@ -231,34 +271,16 @@ function getcolumns(setdrawer) { ...@@ -231,34 +271,16 @@ function getcolumns(setdrawer) {
hideInSearch: true, hideInSearch: true,
hideInForm: true, hideInForm: true,
render: (_, row) => { render: (_, row) => {
return <Image src={row?.qrCodeUrl} /> return row?.qrCodeUrl ? <Image style={{ width: 40, height: 40, objectFit: 'contain', objectPosition: 'center' }} src={row?.qrCodeUrl} /> : '-'
} }
}, }
{
title: '经营状态',
dataIndex: 'statusName',
key: 'status',
hideInForm: true,
valueType: 'select',
options: [
{ label: '报废', value: '0' },
{ label: '预占', value: '1' },
{ label: '租赁', value: '2' },
{ label: '销售', value: '3' },
{ label: '闲置', value: '4' },
{ label: '待复检', value: '5' },
{ label: '未绑定', value: '6' },
{ label: '绑定', value: '7' },
],
fixed: 'right'
},
], ],
pathconfig: { pathconfig: {
add: '/lease/umLeaseLedger/save', add: '/lease/umLeaseLedger/save',
edit: '/lease/umLeaseLedger/save', edit: '/lease/umLeaseLedger/save',
list: '/lease/umLeaseLedger/queryList', list: '/lease/umLeaseLedger/queryList',
delete: '/lease/umLeaseLedger/deleteById', delete: '/lease/umLeaseLedger/deleteById',
detail: '/lease/umLeaseLedger/queryById' detail: '/lease/umLeaseLedger/detail'
}, },
}; };
} }
......
...@@ -21,7 +21,6 @@ const Ledger = () => { ...@@ -21,7 +21,6 @@ const Ledger = () => {
supplier: {}, supplier: {},
factory: {} factory: {}
}), }),
[node, cnode] = useState({}),
[extraparams, setextraparams] = useState({}); [extraparams, setextraparams] = useState({});
const { run, loading, runAsync } = useRequest(doFetch, { const { run, loading, runAsync } = useRequest(doFetch, {
manual: true, manual: true,
...@@ -40,7 +39,7 @@ const Ledger = () => { ...@@ -40,7 +39,7 @@ const Ledger = () => {
return defcolumn.concat({ return defcolumn.concat({
title: '操作', title: '操作',
valueType: 'option', valueType: 'option',
width: 170, width: 190,
render: (text, row, _, action) => getExtra(text, row, _, action), render: (text, row, _, action) => getExtra(text, row, _, action),
colProps: { colProps: {
fixed: 'right' fixed: 'right'
...@@ -61,24 +60,29 @@ const Ledger = () => { ...@@ -61,24 +60,29 @@ const Ledger = () => {
}, []) }, [])
const onselecteTree = async (selectedKeys, e, alldata) => { const onselecteTree = (selectedKeys, e, alldata) => {
let params = {}; let params = {};
switch (e.node.type) { if (selectedKeys.length) {
case 1: switch (e.node.type) {
params = { factoryId: e.node.key } case 1:
break; params = { factoryId: e.node.key }
case 2: break;
params = { shopId: e.node.key } case 2:
break; params = { shopId: e.node.key }
case 3: break;
params = { sectionId: e.node.key } case 3:
break; params = { sectionId: e.node.key }
case 4: break;
params = { productionLineId: e.node.key } case 4:
break; params = { productionLineId: e.node.key }
default: break;
params = {}; default:
params = {};
}
} else {
params = {}
} }
setextraparams(params); setextraparams(params);
}; };
const getExtra = (text, row, _, action) => { const getExtra = (text, row, _, action) => {
...@@ -96,7 +100,7 @@ const Ledger = () => { ...@@ -96,7 +100,7 @@ const Ledger = () => {
intelligentUnit = row.ledgerEquipment; intelligentUnit = row.ledgerEquipment;
return [ return [
(ifs || ifse || ifsd) && <PremButton (ifsd || (devicetype1 && ifs) || (devicetype2 && ifse)) && <PremButton
key='edit' key='edit'
btn={{ btn={{
size: 'small', size: 'small',
...@@ -245,7 +249,7 @@ const Ledger = () => { ...@@ -245,7 +249,7 @@ const Ledger = () => {
val: 'add', val: 'add',
title: '新增', title: '新增',
item: { item: {
factoryName: defaultmsg?.factory?.factoryName, factoryId: defaultmsg?.factory?.id,
supplierId: defaultmsg?.supplier?.id supplierId: defaultmsg?.supplier?.id
} }
})); }));
...@@ -337,17 +341,18 @@ const Ledger = () => { ...@@ -337,17 +341,18 @@ const Ledger = () => {
})); }));
}} }}
onFinish={async (vals) => { onFinish={async (vals) => {
// if (drawer?.val == "add") { let newParams = JSON.parse(JSON.stringify(vals));
// await runAsync({ url: pathconfig?.add, params: { ...vals } }); if (drawer?.val == "add") {
// } else if (drawer?.val == "edit") { await runAsync({ url: pathconfig?.add, params: { ...newParams } });
// await runAsync({ } else if (drawer?.val == "edit") {
// url: pathconfig?.edit, await runAsync({
// params: { ...vals, id: drawer?.item?.id }, url: pathconfig?.edit,
// }); params: { ...newParams, id: drawer?.item?.id },
// } });
}
}} }}
> >
<Tabs items={items} /> <Tabs items={items} destroyInactiveTabPane />
</DrawerPro> </DrawerPro>
</div> </div>
} }
......
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