Commit 826ab672 authored by wuhao's avatar wuhao 🎯

asder

parent cda5b656
......@@ -34,6 +34,9 @@ const EditTable = (props) => {
success: true,
total: dataSource?.length ?? 0,
};
console.log('====================================');
console.log(extraparams);
console.log('====================================');
let newparams = {
...params,
...extraparams, //父组件传参
......
import { doFetch } from '@/utils/doFetch';
import React, { useState, useEffect } from 'react';
import AutoTable from '../../AutoTable/mtable';
import EditTable from '../EditTable';
function Expandables({ value, onChange, item }) {
console.log(value);
function Expandables({ value = [], onChange, item }) {
const [allDatasource, setallDatasource] = useState({});
return (
<div>
<AutoTable
......@@ -11,142 +13,161 @@ function Expandables({ value, onChange, item }) {
path={item?.path}
extraparams={item?.extraparams}
expandable={{
expandRowByClick: true,
onExpand: (expanded, record) => {
if (!expanded) return;
//找到value中当前展开的值
let curvalue = value
? value.filter((it) => it.lifePieceAccountId == record.id)?.[0]
: {};
//value中的list
let curvalist = curvalue?.lineStockUseList ?? [];
doFetch({ url: item.expandablePath, params: { lifePieceAccountId: record.id } }).then(
(res) => {
//展开接口返回的结果
let curDatasource = res?.data?.dataList ?? [];
//组合数据
let result = curDatasource?.map((it) => {
const itemval =
curvalist?.filter?.((item) => item.lineStockId == it.id)?.[0] ?? false;
if (itemval) {
it.operateNum = itemval.operateNum;
}
return it;
});
setallDatasource((s) => ({
...s,
[record.id]: result,
}));
},
);
},
expandedRowRender: (record) => {
let curvalue = value
? value.filter((it) => it.lifePieceAccountId == record.id)?.[0]
: {};
return (
<div>
<EditTable
resizeable={false}
alwaysShowAlert={false}
tableAlertRender={false}
tableAlertOptionRender={false}
columns={[
{
title: '线边库',
dataIndex: 'stockName',
search: false,
key: 'stockName',
editable: false,
},
{
title: '供应商编号',
dataIndex: 'supplierNo',
key: 'supplierNo',
search: false,
editable: false,
<EditTable
resizeable={false}
alwaysShowAlert={false}
tableAlertRender={false}
tableAlertOptionRender={false}
columns={[
{
title: '线边库',
dataIndex: 'stockName',
search: false,
key: 'stockName',
editable: false,
},
{
title: '供应商编号',
dataIndex: 'supplierNo',
key: 'supplierNo',
search: false,
editable: false,
},
{
title: '供应商名称',
dataIndex: 'supplierName',
search: false,
key: 'supplierName',
editable: false,
},
{
title: '库存数量',
dataIndex: 'actualStock',
search: false,
key: 'actualStock',
editable: false,
},
{
title: '下架数量',
dataIndex: 'operateNum',
search: false,
key: 'operateNum',
valueType: 'digit',
fieldProps: {
precision: 3,
},
{
title: '供应商名称',
dataIndex: 'supplierName',
search: false,
key: 'supplierName',
editable: false,
},
{
title: '库存数量',
dataIndex: 'actualStock',
search: false,
key: 'actualStock',
editable: false,
},
{
title: '下架数量',
dataIndex: 'operateNum',
search: false,
key: 'operateNum',
valueType: 'digit',
fieldProps: {
precision: 3,
},
},
]}
path={item?.expandablePath}
extraparams={{ lifePieceAccountId: record?.id }}
rowSelection={{
getCheckboxProps: (record) => ({
disabled: record.isAsh == '1',
}),
columnWidth: 44,
preserveSelectedRowKeys: true,
selectedRowKeys:
value && value.length > 0
? value?.filter?.((it) => it?.lifePieceAccountId == record.id)[0]
? value
?.filter?.((it) => it?.lifePieceAccountId == record.id)[0]
?.lineStockUseList?.map?.((it) => it?.lineStockId)
: []
: [],
onChange: (selectedKeys, selectedRows) => {
// debugger;
const curval =
value?.filter?.((it) => it?.lifePieceAccountId == record.id)[0]
?.lineStockUseList ?? [];
const rowkeylist =
curval && curval.length > 0 ? curval?.map((it) => it?.lineStockId) : [];
const newValue = selectedRows?.map((its) => {
if (rowkeylist?.includes(its?.id)) {
return curval?.filter((it) => it?.lineStockId == its?.id)[0];
} else {
return {
lineStockId: its.id,
operateNum: its.operateNum,
};
}
});
let nvalue = value ? [...value] : [];
if (value && value?.some((it) => it.lineStockId == record?.id)) {
nvalue = value?.map((it, i) => {
if (it.lineStockId == record.id) {
it.lineStockUseList = newValue;
}
return it;
});
},
]}
dataSource={allDatasource[record.id]}
extraparams={allDatasource}
rowSelection={{
getCheckboxProps: (record) => ({
disabled: record.isAsh == '1',
}),
columnWidth: 44,
preserveSelectedRowKeys: true,
selectedRowKeys: curvalue?.lineStockUseList
? curvalue.lineStockUseList?.map?.((it) => it?.lineStockId)
: [],
onChange: (selectedKeys, selectedRows) => {
// debugger;
const curval = curvalue?.lineStockUseList ?? [];
const rowkeylist = curval?.map?.((it) => it?.lineStockId);
const newValue = selectedRows?.map((its) => {
if (rowkeylist?.includes(its?.id)) {
return curval?.filter((it) => it?.lineStockId == its?.id)[0];
} else {
nvalue.push({
id: record?.id,
lineStockUseList: newValue,
});
return {
lineStockId: its.id,
operateNum: its.operateNum,
};
}
onChange(nvalue);
},
}}
editable={{
onValuesChange: (rower, recordList) => {
console.log(rower);
const curval =
value?.filter?.((it) => it?.lifePieceAccountId == record.id)[0]
?.lineStockUseList ?? [];
const newValue = curval?.map((its) => {
if (its?.lineStockId == rower?.id) {
return {
lineStockId: rower.id,
operateNum: rower.operateNum,
};
} else {
return its;
});
let nvalue = value ? [...value] : [];
if (value && value?.some((it) => it.lifePieceAccountId == record?.id)) {
nvalue = value?.map((it, i) => {
if (it.lifePieceAccountId == record.id) {
it.lineStockUseList = newValue;
}
return it;
});
let nvalue = value ? [...value] : [];
if (value && value?.some((it) => it.id == record?.id)) {
nvalue = value?.map((it, i) => {
if (it.id == record.id) {
it.lineStockUseList = newValue;
}
return it;
});
} else {
nvalue.push({
lifePieceAccountId: record?.id,
lineStockUseList: newValue,
});
}
onChange(nvalue);
},
}}
editable={{
onValuesChange: (rower, recordList) => {
const curval = curvalue?.lineStockUseList ?? [];
const newValue = curval?.map((its) => {
if (its?.lineStockId == rower?.id) {
return {
lineStockId: rower.id,
operateNum: rower.operateNum,
};
} else {
nvalue.push({
id: record.id,
lineStockUseList: newValue,
});
return its;
}
onChange(nvalue);
},
onExpandedRowsChange: (expandedRows) => {
console.log(expandedRows);
},
}}
/>
</div>
});
let nvalue = value ? [...value] : [];
if (value && value?.some((it) => it.lifePieceAccountId == record?.id)) {
nvalue = value?.map((it, i) => {
if (it.lifePieceAccountId == record.id) {
it.lineStockUseList = newValue;
}
return it;
});
} else {
nvalue.push({
id: record.id,
lineStockUseList: newValue,
});
}
onChange(nvalue);
},
}}
/>
);
},
}}
......
......@@ -713,7 +713,7 @@ function Failure(props) {
const Finishrepair = () => {
const EditTableItem = ({ record }) => {
const [value, setvalue] = useState([]);
console.log(value);
return (
<div>
<EditTable
......@@ -789,7 +789,6 @@ function Failure(props) {
const newValue = value.concat(rower);
return [...newValue];
});
console.log(value);
},
}}
/>
......@@ -1051,7 +1050,7 @@ function Failure(props) {
},
],
path: '/sparepart/lifePieceAccount/queryPageByEquipment',
expandablePath: '/sparepart/lineStock/queryReplaceStock',
expandablePath: '/sparepart/lineStock/queryReplaceStockAll',
extraparams: { equipmentId: drawer?.item?.equipmentId },
},
];
......
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