feat(operation): 新增订单成本费用管理功能
- 在 CostList 组件中增加物流类型和司机类型的枚举支持 - 更新表单和列配置以支持新的费用类型(LOGISTICS_TYPE, DRIVER_TYPE) - 隐藏物流类型的费用项显示 - 修改费用项依赖逻辑以适配新的人工类型 - 添加 OrderCostList 组件用于展示订单相关的成本费用信息 - 实现费用名称下拉选择及分组展示 - 支持通过是否付款状态筛选数据 - 展示关联采购单、车辆路线及公司信息 - 提供已付款/未付款标签页切换 - 引入 orderCost 相关接口和服务 - 更新权限标识为 operation-order-cost - 增加国际化文案支持新增的字段和选项 - 调整角色ID和标签ID类型为字符串数组 - 替换 PaymentCost 页面组件引用为 OrderCostList
This commit is contained in:
parent
8c169fb4ca
commit
775a05a143
@ -83,6 +83,9 @@ export default function CostList(props: ICostListProps) {
|
|||||||
OTHER_TYPE: intl.formatMessage({
|
OTHER_TYPE: intl.formatMessage({
|
||||||
id: intlPrefix + '.column.type.enum.otherType',
|
id: intlPrefix + '.column.type.enum.otherType',
|
||||||
}),
|
}),
|
||||||
|
LOGISTICS_TYPE: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.type.enum.logisticsType',
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
search: false,
|
search: false,
|
||||||
},
|
},
|
||||||
@ -101,6 +104,9 @@ export default function CostList(props: ICostListProps) {
|
|||||||
PRODUCTION_TYPE: intl.formatMessage({
|
PRODUCTION_TYPE: intl.formatMessage({
|
||||||
id: intlPrefix + '.column.belong.enum.productionType',
|
id: intlPrefix + '.column.belong.enum.productionType',
|
||||||
}),
|
}),
|
||||||
|
DRIVER_TYPE: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.form.belong.enum.driverType',
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -114,7 +120,10 @@ export default function CostList(props: ICostListProps) {
|
|||||||
<div>{record.costItemVOList?.map((item) => item.name).join(',')}</div>
|
<div>{record.costItemVOList?.map((item) => item.name).join(',')}</div>
|
||||||
),
|
),
|
||||||
search: false,
|
search: false,
|
||||||
hidden: type === 'PRODUCTION_TYPE' || type === 'OTHER_TYPE',
|
hidden:
|
||||||
|
type === 'PRODUCTION_TYPE' ||
|
||||||
|
type === 'OTHER_TYPE' ||
|
||||||
|
type === 'LOGISTICS_TYPE',
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -186,6 +195,9 @@ export default function CostList(props: ICostListProps) {
|
|||||||
OTHER_TYPE: intl.formatMessage({
|
OTHER_TYPE: intl.formatMessage({
|
||||||
id: intlPrefix + '.form.type.enum.otherType',
|
id: intlPrefix + '.form.type.enum.otherType',
|
||||||
}),
|
}),
|
||||||
|
LOGISTICS_TYPE: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.form.type.enum.logisticsType',
|
||||||
|
}),
|
||||||
}}
|
}}
|
||||||
/>,
|
/>,
|
||||||
// belong
|
// belong
|
||||||
@ -212,12 +224,15 @@ export default function CostList(props: ICostListProps) {
|
|||||||
PRODUCTION_TYPE: intl.formatMessage({
|
PRODUCTION_TYPE: intl.formatMessage({
|
||||||
id: intlPrefix + '.form.belong.enum.productionType',
|
id: intlPrefix + '.form.belong.enum.productionType',
|
||||||
}),
|
}),
|
||||||
|
DRIVER_TYPE: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.form.belong.enum.driverType',
|
||||||
|
}),
|
||||||
}}
|
}}
|
||||||
/>,
|
/>,
|
||||||
<ProFormDependency key={'type'} name={['type']}>
|
<ProFormDependency key={'type'} name={['type']}>
|
||||||
{({ type }) => {
|
{({ type }) => {
|
||||||
return (
|
return (
|
||||||
(type === 'MATERIAL_TYPE' || type === 'PRODUCTION_TYPE') && (
|
(type === 'MATERIAL_TYPE' || type === 'ARTIFICIAL_TYPE') && (
|
||||||
<ProFormBizSelect
|
<ProFormBizSelect
|
||||||
ref={costRef}
|
ref={costRef}
|
||||||
key={'costItemIds'}
|
key={'costItemIds'}
|
||||||
@ -336,6 +351,12 @@ export default function CostList(props: ICostListProps) {
|
|||||||
id: intlPrefix + '.type.otherType',
|
id: intlPrefix + '.type.otherType',
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
key: 'LOGISTICS_TYPE',
|
||||||
|
tab: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.type.logisticsType',
|
||||||
|
}),
|
||||||
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
}}
|
}}
|
||||||
|
|||||||
@ -1,132 +1,210 @@
|
|||||||
import { BizContainer, BizValueType, ModeType } from '@/components';
|
import {
|
||||||
|
BizContainer,
|
||||||
|
BizValueType,
|
||||||
|
CompanyList,
|
||||||
|
ModeType,
|
||||||
|
PurchaseOrderList,
|
||||||
|
} from '@/components';
|
||||||
import { business } from '@/services';
|
import { business } from '@/services';
|
||||||
import { useIntl } from '@@/exports';
|
import { useIntl } from '@@/exports';
|
||||||
import { ProColumns } from '@ant-design/pro-components';
|
import { ProColumns } from '@ant-design/pro-components';
|
||||||
import { ProDescriptionsItemProps } from '@ant-design/pro-descriptions';
|
import { ProDescriptionsItemProps } from '@ant-design/pro-descriptions';
|
||||||
import { Tag } from 'antd';
|
|
||||||
import React, { useState } from 'react';
|
import React, { useState } from 'react';
|
||||||
|
import groupby from '@/utils/groupby';
|
||||||
|
|
||||||
interface IOrderSupplierListProps {
|
interface IOrderCostListProps {
|
||||||
ghost?: boolean;
|
ghost?: boolean;
|
||||||
orderId?: BusinessAPI.PurchaseOrderVO['orderId'];
|
orderCostId?: BusinessAPI.OrderCostVO['orderCostId'];
|
||||||
search?: boolean;
|
search?: boolean;
|
||||||
onValueChange?: () => void;
|
onValueChange?: () => void;
|
||||||
mode?: ModeType;
|
mode?: ModeType;
|
||||||
trigger?: () => React.ReactNode;
|
trigger?: () => React.ReactNode;
|
||||||
}
|
}
|
||||||
|
|
||||||
export default function OrderSupplierList(props: IOrderSupplierListProps) {
|
export default function OrderCostList(props: IOrderCostListProps) {
|
||||||
const {
|
const {
|
||||||
ghost = false,
|
ghost = false,
|
||||||
orderId,
|
orderCostId,
|
||||||
search = true,
|
search = true,
|
||||||
mode = 'page',
|
mode = 'page',
|
||||||
trigger,
|
trigger,
|
||||||
onValueChange,
|
onValueChange,
|
||||||
} = props;
|
} = props;
|
||||||
const intl = useIntl();
|
const intl = useIntl();
|
||||||
const intlPrefix = 'orderSupplier';
|
const intlPrefix = 'orderCost';
|
||||||
|
|
||||||
const [activeKey, setActiveKey] = useState<string>('ALL');
|
const [activeKey, setActiveKey] = useState<string>('ALL');
|
||||||
|
|
||||||
const columns: ProColumns<BusinessAPI.PurchaseOrderVO, BizValueType>[] = [
|
const columns: ProColumns<BusinessAPI.OrderCostVO, BizValueType>[] = [
|
||||||
{
|
{
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.orderSn' }),
|
title: intl.formatMessage({ id: intlPrefix + '.column.name' }),
|
||||||
dataIndex: 'orderSn',
|
dataIndex: 'name',
|
||||||
key: 'orderSn',
|
key: 'costId',
|
||||||
renderText: (text: string) => <span className="font-medium">{text}</span>,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.origin' }),
|
|
||||||
dataIndex: ['orderVehicle', 'origin'],
|
|
||||||
search: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.destination' }),
|
|
||||||
dataIndex: ['orderVehicle', 'destination'],
|
|
||||||
search: false,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.dealerName' }),
|
|
||||||
dataIndex: ['orderVehicle', 'dealerName'],
|
|
||||||
key: 'dealerName',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.plate' }),
|
|
||||||
dataIndex: ['orderVehicle', 'plate'],
|
|
||||||
key: 'plate',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.driver' }),
|
|
||||||
dataIndex: ['orderVehicle', 'driver'],
|
|
||||||
key: 'driver',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.phone' }),
|
|
||||||
dataIndex: ['orderVehicle', 'phone'],
|
|
||||||
key: 'phone',
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.state' }),
|
|
||||||
dataIndex: 'state',
|
|
||||||
key: 'state',
|
|
||||||
valueType: 'select',
|
valueType: 'select',
|
||||||
render: (_, record) => {
|
fieldProps: {
|
||||||
const stateText = intl.formatMessage({
|
fetchDataOnSearch: false,
|
||||||
id: `${intlPrefix}.column.state.${record.state?.toLowerCase() || 'unknown'}`,
|
showSearch: true,
|
||||||
|
autoClearSearchValue: true,
|
||||||
|
},
|
||||||
|
request: async () => {
|
||||||
|
const { data } = await business.cost.listCost({
|
||||||
|
costListQry: {},
|
||||||
});
|
});
|
||||||
|
|
||||||
let color = 'default';
|
const costGroup = groupby(data || [], (item) => item.type);
|
||||||
switch (record.state) {
|
|
||||||
case 'DRAFT':
|
|
||||||
color = 'default';
|
|
||||||
break;
|
|
||||||
case 'WAITING_AUDIT':
|
|
||||||
color = 'processing';
|
|
||||||
break;
|
|
||||||
case 'COMPLETED':
|
|
||||||
color = 'success';
|
|
||||||
break;
|
|
||||||
case 'REJECTED':
|
|
||||||
color = 'error';
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
color = 'default';
|
|
||||||
}
|
|
||||||
|
|
||||||
return <Tag color={color}>{stateText}</Tag>;
|
const options = Object.keys(costGroup).map((key) => ({
|
||||||
|
label: intl.formatMessage({
|
||||||
|
id:
|
||||||
|
'cost.column.type.enum.' +
|
||||||
|
key
|
||||||
|
.toLowerCase()
|
||||||
|
.replace(/_([a-z])/g, (_, char) => char.toUpperCase()),
|
||||||
|
}),
|
||||||
|
title: key,
|
||||||
|
options: costGroup[key].map((item) => ({
|
||||||
|
label: item.name,
|
||||||
|
value: item.costId,
|
||||||
|
})),
|
||||||
|
}));
|
||||||
|
|
||||||
|
return options || [];
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: intl.formatMessage({ id: intlPrefix + '.column.createdAt' }),
|
title: intl.formatMessage({ id: intlPrefix + '.column.principal' }),
|
||||||
dataIndex: 'createdAt',
|
dataIndex: 'principal',
|
||||||
key: 'createdAt',
|
key: 'principal',
|
||||||
valueType: 'dateTime',
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.belong' }),
|
||||||
|
dataIndex: 'belong',
|
||||||
|
key: 'belong',
|
||||||
|
valueType: 'select',
|
||||||
|
valueEnum: {
|
||||||
|
WORKER_TYPE: {
|
||||||
|
text: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.belong.workerType',
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
PRODUCTION_TYPE: {
|
||||||
|
text: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.belong.productionType',
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
DRIVER_TYPE: {
|
||||||
|
text: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.belong.driverType',
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.price' }),
|
||||||
|
dataIndex: 'price',
|
||||||
|
key: 'price',
|
||||||
|
valueType: 'money',
|
||||||
search: false,
|
search: false,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.purchaseOrder' }),
|
||||||
|
dataIndex: 'purchaseOrderVO',
|
||||||
|
key: 'poOrderSn',
|
||||||
|
render: (_, record) => {
|
||||||
|
return (
|
||||||
|
<PurchaseOrderList
|
||||||
|
ghost={true}
|
||||||
|
mode={'detail'}
|
||||||
|
orderId={record.purchaseOrderVO.orderId}
|
||||||
|
trigger={() => <a href={'#'}>{record.purchaseOrderVO.orderSn}</a>}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.orderVehicle' }),
|
||||||
|
dataIndex: 'orderVehicle',
|
||||||
|
key: 'ovVehicleNo',
|
||||||
|
render: (_, record) => {
|
||||||
|
return (
|
||||||
|
<span>
|
||||||
|
{record.orderVehicle.origin} 至 {record.orderVehicle.destination}
|
||||||
|
</span>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.orderCompany' }),
|
||||||
|
dataIndex: 'orderCompany',
|
||||||
|
valueType: 'select',
|
||||||
|
request: async (params) => {
|
||||||
|
const { data } = await business.company.listCompany({
|
||||||
|
companyListQry: {
|
||||||
|
...params,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
|
||||||
|
return (
|
||||||
|
data?.map((item) => {
|
||||||
|
return {
|
||||||
|
label: item.fullName,
|
||||||
|
value: item.companyId,
|
||||||
|
};
|
||||||
|
}) || []
|
||||||
|
);
|
||||||
|
},
|
||||||
|
render: (_, record) => {
|
||||||
|
return (
|
||||||
|
<CompanyList
|
||||||
|
ghost={true}
|
||||||
|
mode={'detail'}
|
||||||
|
companyId={record.orderCompany.companyId}
|
||||||
|
trigger={() => <a href={'#'}>{record.orderCompany.fullName}</a>}
|
||||||
|
/>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: intl.formatMessage({ id: intlPrefix + '.column.isPaid' }),
|
||||||
|
dataIndex: 'isPaid',
|
||||||
|
key: 'isPaid',
|
||||||
|
valueType: 'select',
|
||||||
|
valueEnum: {
|
||||||
|
true: {
|
||||||
|
text: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.isPaid.paid',
|
||||||
|
}),
|
||||||
|
status: 'success',
|
||||||
|
},
|
||||||
|
false: {
|
||||||
|
text: intl.formatMessage({
|
||||||
|
id: intlPrefix + '.column.isPaid.unpaid',
|
||||||
|
}),
|
||||||
|
status: 'processing',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
const detailColumns: ProDescriptionsItemProps<
|
const detailColumns: ProDescriptionsItemProps<
|
||||||
BusinessAPI.PurchaseOrderVO,
|
BusinessAPI.OrderCostVO,
|
||||||
BizValueType
|
BizValueType
|
||||||
>[] = columns as ProDescriptionsItemProps<
|
>[] = columns as ProDescriptionsItemProps<
|
||||||
BusinessAPI.PurchaseOrderVO,
|
BusinessAPI.OrderCostVO,
|
||||||
BizValueType
|
BizValueType
|
||||||
>[];
|
>[];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<BizContainer<
|
<BizContainer<
|
||||||
typeof business.purchaseOrder,
|
typeof business.orderCost,
|
||||||
BusinessAPI.PurchaseOrderVO,
|
BusinessAPI.OrderCostVO,
|
||||||
BusinessAPI.PurchaseOrderPageQry,
|
BusinessAPI.OrderCostPageQry
|
||||||
BusinessAPI.PurchaseOrderCreateCmd,
|
|
||||||
BusinessAPI.PurchaseOrderUpdateCmd
|
|
||||||
>
|
>
|
||||||
rowKey={'orderId'}
|
rowKey={'orderCostId'}
|
||||||
permission={'operation-purchase-order'}
|
permission={'operation-order-cost'}
|
||||||
func={business.purchaseOrder}
|
func={business.orderCost}
|
||||||
method={'purchaseOrder'}
|
method={'orderCost'}
|
||||||
methodUpper={'PurchaseOrder'}
|
methodUpper={'OrderCost'}
|
||||||
intlPrefix={intlPrefix}
|
intlPrefix={intlPrefix}
|
||||||
modeType={mode}
|
modeType={mode}
|
||||||
onValueChange={onValueChange}
|
onValueChange={onValueChange}
|
||||||
@ -142,8 +220,10 @@ export default function OrderSupplierList(props: IOrderSupplierListProps) {
|
|||||||
search,
|
search,
|
||||||
params: {
|
params: {
|
||||||
...(activeKey !== 'ALL' && {
|
...(activeKey !== 'ALL' && {
|
||||||
state: activeKey! as BusinessAPI.PurchaseOrderVO['state'],
|
isPaid: activeKey! as any,
|
||||||
}),
|
}),
|
||||||
|
poStates: ['COMPLETED'],
|
||||||
|
belongs: ['WORKER_TYPE', 'PRODUCTION_TYPE', 'DRIVER_TYPE'],
|
||||||
},
|
},
|
||||||
toolbar: {
|
toolbar: {
|
||||||
menu: {
|
menu: {
|
||||||
@ -157,34 +237,18 @@ export default function OrderSupplierList(props: IOrderSupplierListProps) {
|
|||||||
id: intlPrefix + '.tab.all',
|
id: intlPrefix + '.tab.all',
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
// 已支付
|
||||||
{
|
{
|
||||||
key: 'DRAFT',
|
key: 'true',
|
||||||
label: intl.formatMessage({
|
label: intl.formatMessage({
|
||||||
id: intlPrefix + '.tab.draft',
|
id: intlPrefix + '.tab.paid',
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
// 未支付
|
||||||
{
|
{
|
||||||
key: 'WAITING_AUDIT',
|
key: 'false',
|
||||||
label: intl.formatMessage({
|
label: intl.formatMessage({
|
||||||
id: intlPrefix + '.tab.waitingAudit',
|
id: intlPrefix + '.tab.unpaid',
|
||||||
}),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 'COMPLETED',
|
|
||||||
label: intl.formatMessage({
|
|
||||||
id: intlPrefix + '.tab.completed',
|
|
||||||
}),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 'REJECTED',
|
|
||||||
label: intl.formatMessage({
|
|
||||||
id: intlPrefix + '.tab.rejected',
|
|
||||||
}),
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 'CLOSED',
|
|
||||||
label: intl.formatMessage({
|
|
||||||
id: intlPrefix + '.tab.closed',
|
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
@ -200,7 +264,7 @@ export default function OrderSupplierList(props: IOrderSupplierListProps) {
|
|||||||
update={false}
|
update={false}
|
||||||
destroy={false}
|
destroy={false}
|
||||||
detail={{
|
detail={{
|
||||||
rowId: orderId,
|
rowId: orderCostId,
|
||||||
formType: 'drawer',
|
formType: 'drawer',
|
||||||
columns: detailColumns,
|
columns: detailColumns,
|
||||||
trigger,
|
trigger,
|
||||||
|
|||||||
@ -1,2 +1,3 @@
|
|||||||
export { default as PurchaseOrderList } from './PurchaseOrderList';
|
export { default as PurchaseOrderList } from './PurchaseOrderList';
|
||||||
export { default as OrderSupplierList } from './OrderSupplierList';
|
export { default as OrderSupplierList } from './OrderSupplierList';
|
||||||
|
export { default as OrderCostList } from './OrderCostList';
|
||||||
|
|||||||
@ -1703,6 +1703,7 @@ export default {
|
|||||||
artificialType: '人工类型',
|
artificialType: '人工类型',
|
||||||
productionType: '产地类型',
|
productionType: '产地类型',
|
||||||
otherType: '其他类型',
|
otherType: '其他类型',
|
||||||
|
logisticsType: '运输类型',
|
||||||
},
|
},
|
||||||
column: {
|
column: {
|
||||||
name: '费用名称',
|
name: '费用名称',
|
||||||
@ -1713,10 +1714,12 @@ export default {
|
|||||||
'type.enum.artificialType': '人工类型',
|
'type.enum.artificialType': '人工类型',
|
||||||
'type.enum.productionType': '产地类型',
|
'type.enum.productionType': '产地类型',
|
||||||
'type.enum.otherType': '其他类型',
|
'type.enum.otherType': '其他类型',
|
||||||
|
'type.enum.logisticsType': '运输类型',
|
||||||
belong: '费用归属',
|
belong: '费用归属',
|
||||||
'belong.enum.noneType': '无归属',
|
'belong.enum.noneType': '无归属',
|
||||||
'belong.enum.workerType': '工头垫付',
|
'belong.enum.workerType': '工头垫付',
|
||||||
'belong.enum.productionType': '产地垫付',
|
'belong.enum.productionType': '产地垫付',
|
||||||
|
'belong.enum.driverType': '司机垫付',
|
||||||
costItemIds: '关联费用项',
|
costItemIds: '关联费用项',
|
||||||
remark: '备注',
|
remark: '备注',
|
||||||
status: '状态',
|
status: '状态',
|
||||||
@ -1751,6 +1754,7 @@ export default {
|
|||||||
artificialType: '人工类型',
|
artificialType: '人工类型',
|
||||||
productionType: '产地类型',
|
productionType: '产地类型',
|
||||||
otherType: '其他类型',
|
otherType: '其他类型',
|
||||||
|
logisticsType: '运输类型',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
belong: {
|
belong: {
|
||||||
@ -1759,8 +1763,9 @@ export default {
|
|||||||
required: '费用归属为必填项',
|
required: '费用归属为必填项',
|
||||||
enum: {
|
enum: {
|
||||||
noneType: '无归属',
|
noneType: '无归属',
|
||||||
workerType: '工头',
|
workerType: '工头垫付',
|
||||||
productionType: '产地',
|
productionType: '产地垫付',
|
||||||
|
driverType: '司机垫付',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
costItemIds: {
|
costItemIds: {
|
||||||
@ -2192,4 +2197,55 @@ export default {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
orderCost: {
|
||||||
|
tab: {
|
||||||
|
all: '全部',
|
||||||
|
paid: '已付款',
|
||||||
|
unpaid: '待付款',
|
||||||
|
},
|
||||||
|
column: {
|
||||||
|
name: '费用名称',
|
||||||
|
principal: '收款方',
|
||||||
|
price: '待付款金额',
|
||||||
|
purchaseOrder: '关联采购单',
|
||||||
|
orderVehicle: '关联车辆',
|
||||||
|
orderCompany: '所属公司',
|
||||||
|
belong: '归属',
|
||||||
|
'belong.workerType': '工头',
|
||||||
|
'belong.productionType': '产地',
|
||||||
|
'belong.driverType': '司机',
|
||||||
|
isPaid: '是否付款',
|
||||||
|
'isPaid.paid': '已付款',
|
||||||
|
'isPaid.unpaid': '待付款',
|
||||||
|
paidAt: '付款时间',
|
||||||
|
createdAt: '创建时间',
|
||||||
|
option: '操作',
|
||||||
|
},
|
||||||
|
modal: {
|
||||||
|
create: {
|
||||||
|
title: '创建订单成本费用',
|
||||||
|
button: '创建订单成本费用',
|
||||||
|
success: '创建订单成本费用成功',
|
||||||
|
},
|
||||||
|
update: {
|
||||||
|
title: '更新订单成本费用',
|
||||||
|
button: '编辑',
|
||||||
|
success: '更新订单成本费用成功',
|
||||||
|
},
|
||||||
|
delete: {
|
||||||
|
success: '删除订单成本费用成功',
|
||||||
|
button: '删除',
|
||||||
|
confirm: {
|
||||||
|
title: '确认删除',
|
||||||
|
content: '您确定要删除该订单成本费用吗?',
|
||||||
|
okText: '确定',
|
||||||
|
cancelText: '取消',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
view: {
|
||||||
|
title: '查看订单成本费用',
|
||||||
|
button: '详情',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import { MelonFarmerList } from '@/components';
|
import { OrderCostList } from '@/components';
|
||||||
|
|
||||||
export default function Page() {
|
export default function Page() {
|
||||||
return <MelonFarmerList />;
|
return <OrderCostList />;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -100,7 +100,7 @@ declare namespace AuthAPI {
|
|||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userId: string;
|
userId: string;
|
||||||
/** 角色ID */
|
/** 角色ID */
|
||||||
roleIdList: number[];
|
roleIdList: string[];
|
||||||
/** 角色信息 */
|
/** 角色信息 */
|
||||||
userRoleList?: UserRoleVO[];
|
userRoleList?: UserRoleVO[];
|
||||||
};
|
};
|
||||||
@ -195,7 +195,7 @@ declare namespace AuthAPI {
|
|||||||
|
|
||||||
type RoleMenuTreeQry = {
|
type RoleMenuTreeQry = {
|
||||||
/** 角色权限 */
|
/** 角色权限 */
|
||||||
roleId?: number[];
|
roleId?: string[];
|
||||||
/** 平台ID */
|
/** 平台ID */
|
||||||
platformId: string;
|
platformId: string;
|
||||||
};
|
};
|
||||||
@ -329,7 +329,7 @@ declare namespace AuthAPI {
|
|||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 客户标签 */
|
/** 客户标签 */
|
||||||
labelId?: number[];
|
labelId?: string[];
|
||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userId: string;
|
userId: string;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -22,6 +22,7 @@ import * as giftBox from './giftBox';
|
|||||||
import * as material from './material';
|
import * as material from './material';
|
||||||
import * as materialCategory from './materialCategory';
|
import * as materialCategory from './materialCategory';
|
||||||
import * as menu from './menu';
|
import * as menu from './menu';
|
||||||
|
import * as orderCost from './orderCost';
|
||||||
import * as orderShip from './orderShip';
|
import * as orderShip from './orderShip';
|
||||||
import * as orderSupplier from './orderSupplier';
|
import * as orderSupplier from './orderSupplier';
|
||||||
import * as permission from './permission';
|
import * as permission from './permission';
|
||||||
@ -64,4 +65,5 @@ export default {
|
|||||||
role,
|
role,
|
||||||
permission,
|
permission,
|
||||||
extraction,
|
extraction,
|
||||||
|
orderCost,
|
||||||
};
|
};
|
||||||
|
|||||||
23
packages/app-operation/src/services/business/orderCost.ts
Normal file
23
packages/app-operation/src/services/business/orderCost.ts
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
// @ts-ignore
|
||||||
|
/* eslint-disable */
|
||||||
|
import request from '../request';
|
||||||
|
|
||||||
|
/** 订单成本项列表 GET /operation/pageOrderCost */
|
||||||
|
export async function pageOrderCost(
|
||||||
|
// 叠加生成的Param类型 (非body参数swagger默认没有生成对象)
|
||||||
|
params: BusinessAPI.pageOrderCostParams,
|
||||||
|
options?: { [key: string]: any },
|
||||||
|
) {
|
||||||
|
return request<BusinessAPI.PageResponseOrderCostVO>(
|
||||||
|
'/operation/pageOrderCost',
|
||||||
|
{
|
||||||
|
method: 'GET',
|
||||||
|
params: {
|
||||||
|
...params,
|
||||||
|
orderCostPageQry: undefined,
|
||||||
|
...params['orderCostPageQry'],
|
||||||
|
},
|
||||||
|
...(options || {}),
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}
|
||||||
@ -104,7 +104,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 品牌图片URL */
|
/** 品牌图片URL */
|
||||||
image?: string;
|
image?: string;
|
||||||
/** 纸箱规格ID */
|
/** 纸箱规格ID */
|
||||||
specIds?: number[];
|
specIds?: string[];
|
||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
@ -175,7 +175,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 品牌图片URL */
|
/** 品牌图片URL */
|
||||||
image?: string;
|
image?: string;
|
||||||
/** 纸箱规格ID */
|
/** 纸箱规格ID */
|
||||||
specIds?: number[];
|
specIds?: string[];
|
||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
@ -192,7 +192,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 品牌图片URL */
|
/** 品牌图片URL */
|
||||||
image?: string;
|
image?: string;
|
||||||
/** 纸箱规格ID */
|
/** 纸箱规格ID */
|
||||||
specIds?: number[];
|
specIds?: string[];
|
||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
@ -892,14 +892,15 @@ declare namespace BusinessAPI {
|
|||||||
type CostCreateCmd = {
|
type CostCreateCmd = {
|
||||||
/** 费用ID */
|
/** 费用ID */
|
||||||
costId: string;
|
costId: string;
|
||||||
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型 */
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
type:
|
type:
|
||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
/** 费用归属:1_工头;2_产地; */
|
| 'LOGISTICS_TYPE';
|
||||||
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE' | 'DRIVER_TYPE';
|
||||||
/** 费用名称 */
|
/** 费用名称 */
|
||||||
name: string;
|
name: string;
|
||||||
/** 单价 */
|
/** 单价 */
|
||||||
@ -913,7 +914,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
status: boolean;
|
status: boolean;
|
||||||
/** 成本项ID */
|
/** 成本项ID */
|
||||||
costItemIds?: number[];
|
costItemIds?: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type CostDestroyCmd = {
|
type CostDestroyCmd = {
|
||||||
@ -1054,14 +1055,19 @@ declare namespace BusinessAPI {
|
|||||||
status?: boolean;
|
status?: boolean;
|
||||||
/** 费用ID */
|
/** 费用ID */
|
||||||
costId?: string;
|
costId?: string;
|
||||||
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型 */
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
type?:
|
type?:
|
||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
/** 费用归属:1_工头;2_产地; */
|
| 'LOGISTICS_TYPE';
|
||||||
belong?: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong?:
|
||||||
|
| 'NONE_TYPE'
|
||||||
|
| 'WORKER_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'DRIVER_TYPE';
|
||||||
};
|
};
|
||||||
|
|
||||||
type CostPageQry = {
|
type CostPageQry = {
|
||||||
@ -1081,14 +1087,19 @@ declare namespace BusinessAPI {
|
|||||||
status?: boolean;
|
status?: boolean;
|
||||||
/** 费用ID */
|
/** 费用ID */
|
||||||
costId?: string;
|
costId?: string;
|
||||||
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型 */
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
type?:
|
type?:
|
||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
/** 费用归属:1_工头;2_产地; */
|
| 'LOGISTICS_TYPE';
|
||||||
belong?: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong?:
|
||||||
|
| 'NONE_TYPE'
|
||||||
|
| 'WORKER_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'DRIVER_TYPE';
|
||||||
offset?: number;
|
offset?: number;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -1102,14 +1113,15 @@ declare namespace BusinessAPI {
|
|||||||
type CostUpdateCmd = {
|
type CostUpdateCmd = {
|
||||||
/** 费用ID */
|
/** 费用ID */
|
||||||
costId: string;
|
costId: string;
|
||||||
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型 */
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
type:
|
type:
|
||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
/** 费用归属:1_工头;2_产地; */
|
| 'LOGISTICS_TYPE';
|
||||||
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE' | 'DRIVER_TYPE';
|
||||||
/** 费用名称 */
|
/** 费用名称 */
|
||||||
name: string;
|
name: string;
|
||||||
/** 单价 */
|
/** 单价 */
|
||||||
@ -1123,7 +1135,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
status: boolean;
|
status: boolean;
|
||||||
/** 成本项ID */
|
/** 成本项ID */
|
||||||
costItemIds?: number[];
|
costItemIds?: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type CostVO = {
|
type CostVO = {
|
||||||
@ -1134,9 +1146,10 @@ declare namespace BusinessAPI {
|
|||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
/** 费用归属:1_工头;2_产地; */
|
| 'LOGISTICS_TYPE';
|
||||||
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE' | 'DRIVER_TYPE';
|
||||||
/** 费用名称 */
|
/** 费用名称 */
|
||||||
name: string;
|
name: string;
|
||||||
/** 单价 */
|
/** 单价 */
|
||||||
@ -1150,7 +1163,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
status: boolean;
|
status: boolean;
|
||||||
/** 项目id集合 */
|
/** 项目id集合 */
|
||||||
costItemIds?: number[];
|
costItemIds?: string[];
|
||||||
/** 创建时间 */
|
/** 创建时间 */
|
||||||
createdAt?: string;
|
createdAt?: string;
|
||||||
/** 项目列表 */
|
/** 项目列表 */
|
||||||
@ -1831,7 +1844,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 登录密码 */
|
/** 登录密码 */
|
||||||
password: string;
|
password: string;
|
||||||
/** 角色ID */
|
/** 角色ID */
|
||||||
roleId: number[];
|
roleId: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type EmployeeDestroyCmd = {
|
type EmployeeDestroyCmd = {
|
||||||
@ -1924,7 +1937,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userId: string;
|
userId: string;
|
||||||
/** 角色ID */
|
/** 角色ID */
|
||||||
roleIdList: number[];
|
roleIdList: string[];
|
||||||
/** 角色信息 */
|
/** 角色信息 */
|
||||||
userRoleList?: UserRoleVO[];
|
userRoleList?: UserRoleVO[];
|
||||||
};
|
};
|
||||||
@ -2250,7 +2263,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 平台id */
|
/** 平台id */
|
||||||
platformId: string;
|
platformId: string;
|
||||||
/** 角色Id */
|
/** 角色Id */
|
||||||
roleId?: number[];
|
roleId?: string[];
|
||||||
/** 是否隐藏 */
|
/** 是否隐藏 */
|
||||||
hideInMenu?: boolean;
|
hideInMenu?: boolean;
|
||||||
/** 权限Id */
|
/** 权限Id */
|
||||||
@ -2323,7 +2336,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 平台id */
|
/** 平台id */
|
||||||
platformId: string;
|
platformId: string;
|
||||||
/** 角色Id */
|
/** 角色Id */
|
||||||
roleId?: number[];
|
roleId?: string[];
|
||||||
/** 是否隐藏 */
|
/** 是否隐藏 */
|
||||||
hideInMenu?: boolean;
|
hideInMenu?: boolean;
|
||||||
/** 权限Id */
|
/** 权限Id */
|
||||||
@ -2651,18 +2664,23 @@ declare namespace BusinessAPI {
|
|||||||
unit: string;
|
unit: string;
|
||||||
/** 数量 */
|
/** 数量 */
|
||||||
count: number;
|
count: number;
|
||||||
/** 费用归属:1_工头;2_产地 */
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
belong?: 'NONE_TYPE' | 'WORKER_TYPE' | 'PRODUCTION_TYPE';
|
belong?:
|
||||||
|
| 'NONE_TYPE'
|
||||||
|
| 'WORKER_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'DRIVER_TYPE';
|
||||||
/** 负责人 */
|
/** 负责人 */
|
||||||
principal?: string;
|
principal?: string;
|
||||||
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型 */
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
type:
|
type:
|
||||||
| 'MATERIAL_TYPE'
|
| 'MATERIAL_TYPE'
|
||||||
| 'ARTIFICIAL_TYPE'
|
| 'ARTIFICIAL_TYPE'
|
||||||
| 'PRODUCTION_TYPE'
|
| 'PRODUCTION_TYPE'
|
||||||
| 'OTHER_TYPE';
|
| 'OTHER_TYPE'
|
||||||
|
| 'LOGISTICS_TYPE';
|
||||||
/** 关联项目id */
|
/** 关联项目id */
|
||||||
costItemIds?: number[];
|
costItemIds?: string[];
|
||||||
/** 是否选中 */
|
/** 是否选中 */
|
||||||
selected: boolean;
|
selected: boolean;
|
||||||
};
|
};
|
||||||
@ -2692,6 +2710,98 @@ declare namespace BusinessAPI {
|
|||||||
selected: boolean;
|
selected: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type OrderCostPageQry = {
|
||||||
|
pageSize?: number;
|
||||||
|
pageIndex?: number;
|
||||||
|
orderBy?: string;
|
||||||
|
orderDirection?: string;
|
||||||
|
groupBy?: string;
|
||||||
|
needTotalCount?: boolean;
|
||||||
|
/** 自定义字段key */
|
||||||
|
customFieldKey?: string;
|
||||||
|
/** 自定义字段value */
|
||||||
|
customFieldValue?: string;
|
||||||
|
/** 备注 */
|
||||||
|
remark?: string;
|
||||||
|
/** 状态:1_启用;0_禁用; */
|
||||||
|
status?: boolean;
|
||||||
|
/** 订单ID */
|
||||||
|
orderId?: string;
|
||||||
|
/** 订单ID */
|
||||||
|
costId?: string;
|
||||||
|
/** 供应商id */
|
||||||
|
supplierId?: string;
|
||||||
|
/** 订单状态 */
|
||||||
|
poStates?: (
|
||||||
|
| 'DRAFT'
|
||||||
|
| 'WAITING_AUDIT'
|
||||||
|
| 'COMPLETED'
|
||||||
|
| 'REJECTED'
|
||||||
|
| 'CLOSED'
|
||||||
|
)[];
|
||||||
|
/** 所属方 */
|
||||||
|
belongs?: (
|
||||||
|
| 'NONE_TYPE'
|
||||||
|
| 'WORKER_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'DRIVER_TYPE'
|
||||||
|
)[];
|
||||||
|
/** 是否支付 */
|
||||||
|
isPaid?: boolean;
|
||||||
|
offset?: number;
|
||||||
|
};
|
||||||
|
|
||||||
|
type OrderCostVO = {
|
||||||
|
/** 记录ID */
|
||||||
|
orderCostId: string;
|
||||||
|
/** 订单ID */
|
||||||
|
orderId?: string;
|
||||||
|
/** 费用Id */
|
||||||
|
costId: string;
|
||||||
|
/** 成本项目名称 */
|
||||||
|
name: string;
|
||||||
|
/** 单价 */
|
||||||
|
price: number;
|
||||||
|
/** 单位 */
|
||||||
|
unit: string;
|
||||||
|
/** 数量 */
|
||||||
|
count: number;
|
||||||
|
/** 费用归属:0_无归属;1_工头;2_产地;3_司机; */
|
||||||
|
belong?:
|
||||||
|
| 'NONE_TYPE'
|
||||||
|
| 'WORKER_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'DRIVER_TYPE';
|
||||||
|
/** 负责人 */
|
||||||
|
principal?: string;
|
||||||
|
/** 费用类型:1_辅料类型;2_人工类型;3_产地类型;4_其他类型;5_物流类型 */
|
||||||
|
type:
|
||||||
|
| 'MATERIAL_TYPE'
|
||||||
|
| 'ARTIFICIAL_TYPE'
|
||||||
|
| 'PRODUCTION_TYPE'
|
||||||
|
| 'OTHER_TYPE'
|
||||||
|
| 'LOGISTICS_TYPE';
|
||||||
|
/** 关联项目id */
|
||||||
|
costItemIds?: string[];
|
||||||
|
/** 创建时间 */
|
||||||
|
createdAt: string;
|
||||||
|
/** 车辆信息 */
|
||||||
|
orderVehicle: OrderVehicle;
|
||||||
|
/** 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; */
|
||||||
|
poState?:
|
||||||
|
| 'DRAFT'
|
||||||
|
| 'WAITING_AUDIT'
|
||||||
|
| 'COMPLETED'
|
||||||
|
| 'REJECTED'
|
||||||
|
| 'CLOSED';
|
||||||
|
/** 公司信息 */
|
||||||
|
orderCompany: OrderCompany;
|
||||||
|
/** 采购订单信息 */
|
||||||
|
purchaseOrderVO: PurchaseOrderVO;
|
||||||
|
/** 是否付款 */
|
||||||
|
isPaid?: boolean;
|
||||||
|
};
|
||||||
|
|
||||||
type OrderDealer = {
|
type OrderDealer = {
|
||||||
/** 记录ID */
|
/** 记录ID */
|
||||||
orderDealerId?: string;
|
orderDealerId?: string;
|
||||||
@ -3114,7 +3224,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 产品名称 */
|
/** 产品名称 */
|
||||||
productName?: string;
|
productName?: string;
|
||||||
/** 关联费用id */
|
/** 关联费用id */
|
||||||
costIds?: number[];
|
costIds?: string[];
|
||||||
/** 成本模板 */
|
/** 成本模板 */
|
||||||
costTemplate?: string;
|
costTemplate?: string;
|
||||||
/** 是否已付定金 */
|
/** 是否已付定金 */
|
||||||
@ -3144,7 +3254,7 @@ declare namespace BusinessAPI {
|
|||||||
|
|
||||||
type OrderSupplierBatchInvoiceUploadCmd = {
|
type OrderSupplierBatchInvoiceUploadCmd = {
|
||||||
/** 供应商ID列表 */
|
/** 供应商ID列表 */
|
||||||
orderSupplierIdList: number[];
|
orderSupplierIdList: string[];
|
||||||
/** 是否上传票证 */
|
/** 是否上传票证 */
|
||||||
invoiceUpload?: boolean;
|
invoiceUpload?: boolean;
|
||||||
/** 发票照片 */
|
/** 发票照片 */
|
||||||
@ -3398,6 +3508,10 @@ declare namespace BusinessAPI {
|
|||||||
materialPageQry: MaterialPageQry;
|
materialPageQry: MaterialPageQry;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type pageOrderCostParams = {
|
||||||
|
orderCostPageQry: OrderCostPageQry;
|
||||||
|
};
|
||||||
|
|
||||||
type pageOrderShipParams = {
|
type pageOrderShipParams = {
|
||||||
orderShipPageQry: OrderShipPageQry;
|
orderShipPageQry: OrderShipPageQry;
|
||||||
};
|
};
|
||||||
@ -3643,6 +3757,19 @@ declare namespace BusinessAPI {
|
|||||||
totalPages?: number;
|
totalPages?: number;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type PageResponseOrderCostVO = {
|
||||||
|
success?: boolean;
|
||||||
|
errCode?: string;
|
||||||
|
errMessage?: string;
|
||||||
|
totalCount?: number;
|
||||||
|
pageSize?: number;
|
||||||
|
pageIndex?: number;
|
||||||
|
data?: OrderCostVO[];
|
||||||
|
empty?: boolean;
|
||||||
|
notEmpty?: boolean;
|
||||||
|
totalPages?: number;
|
||||||
|
};
|
||||||
|
|
||||||
type PageResponseOrderShipVO = {
|
type PageResponseOrderShipVO = {
|
||||||
success?: boolean;
|
success?: boolean;
|
||||||
errCode?: string;
|
errCode?: string;
|
||||||
@ -3878,7 +4005,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 产品名称 */
|
/** 产品名称 */
|
||||||
name: string;
|
name: string;
|
||||||
/** 关联成本费用id */
|
/** 关联成本费用id */
|
||||||
costIds?: number[];
|
costIds?: string[];
|
||||||
/** 成本模板 */
|
/** 成本模板 */
|
||||||
costTemplate?: string;
|
costTemplate?: string;
|
||||||
/** 备注 */
|
/** 备注 */
|
||||||
@ -3945,7 +4072,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 产品名称 */
|
/** 产品名称 */
|
||||||
name: string;
|
name: string;
|
||||||
/** 关联成本费用id */
|
/** 关联成本费用id */
|
||||||
costIds?: number[];
|
costIds?: string[];
|
||||||
/** 成本模板 */
|
/** 成本模板 */
|
||||||
costTemplate?: string;
|
costTemplate?: string;
|
||||||
/** 备注 */
|
/** 备注 */
|
||||||
@ -3970,7 +4097,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 状态:1_启用;0_禁用 */
|
/** 状态:1_启用;0_禁用 */
|
||||||
status: boolean;
|
status: boolean;
|
||||||
/** 成本ID集合 */
|
/** 成本ID集合 */
|
||||||
costIds?: number[];
|
costIds?: string[];
|
||||||
/** 成本费用 */
|
/** 成本费用 */
|
||||||
costVOList?: CostVO[];
|
costVOList?: CostVO[];
|
||||||
/** 成本模板 */
|
/** 成本模板 */
|
||||||
@ -4273,7 +4400,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 角色详情 */
|
/** 角色详情 */
|
||||||
description?: string;
|
description?: string;
|
||||||
/** 角色id */
|
/** 角色id */
|
||||||
menuId: number[];
|
menuId: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type RoleDestroyCmd = {
|
type RoleDestroyCmd = {
|
||||||
@ -4295,7 +4422,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 角色编号 */
|
/** 角色编号 */
|
||||||
roleId?: string;
|
roleId?: string;
|
||||||
/** 应用角色Id */
|
/** 应用角色Id */
|
||||||
roleIdList?: number[];
|
roleIdList?: string[];
|
||||||
/** 平台Id */
|
/** 平台Id */
|
||||||
platformId?: string;
|
platformId?: string;
|
||||||
/** 平台Id */
|
/** 平台Id */
|
||||||
@ -4342,7 +4469,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 角色详情 */
|
/** 角色详情 */
|
||||||
description?: string;
|
description?: string;
|
||||||
/** 角色id */
|
/** 角色id */
|
||||||
menuId: number[];
|
menuId: string[];
|
||||||
/** 角色ID */
|
/** 角色ID */
|
||||||
roleId: string;
|
roleId: string;
|
||||||
};
|
};
|
||||||
@ -4363,9 +4490,9 @@ declare namespace BusinessAPI {
|
|||||||
/** 平台 */
|
/** 平台 */
|
||||||
platformVO?: PlatformVO;
|
platformVO?: PlatformVO;
|
||||||
/** 权限列表 */
|
/** 权限列表 */
|
||||||
permissionId: number[];
|
permissionId: string[];
|
||||||
/** 菜单列表 */
|
/** 菜单列表 */
|
||||||
menuId: number[];
|
menuId: string[];
|
||||||
/** 创建时间 */
|
/** 创建时间 */
|
||||||
createdAt: string;
|
createdAt: string;
|
||||||
};
|
};
|
||||||
@ -5030,7 +5157,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 客户标签 */
|
/** 客户标签 */
|
||||||
labelId?: number[];
|
labelId?: string[];
|
||||||
};
|
};
|
||||||
|
|
||||||
type UserDestroyCmd = {
|
type UserDestroyCmd = {
|
||||||
@ -5052,7 +5179,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 状态:1_启用;0_禁用; */
|
/** 状态:1_启用;0_禁用; */
|
||||||
status?: boolean;
|
status?: boolean;
|
||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userIdList?: number[];
|
userIdList?: string[];
|
||||||
/** 用户名 */
|
/** 用户名 */
|
||||||
name?: string;
|
name?: string;
|
||||||
};
|
};
|
||||||
@ -5095,9 +5222,9 @@ declare namespace BusinessAPI {
|
|||||||
/** 是否是管理员 */
|
/** 是否是管理员 */
|
||||||
isAdmin?: boolean;
|
isAdmin?: boolean;
|
||||||
/** 会员id列表 */
|
/** 会员id列表 */
|
||||||
userIdList?: number[];
|
userIdList?: string[];
|
||||||
/** 排除的用户id列表 */
|
/** 排除的用户id列表 */
|
||||||
excludeUserIdList?: number[];
|
excludeUserIdList?: string[];
|
||||||
/** 小区id */
|
/** 小区id */
|
||||||
communityId?: number;
|
communityId?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
@ -5107,7 +5234,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userId: string;
|
userId: string;
|
||||||
/** 角色ID */
|
/** 角色ID */
|
||||||
roleIdList?: number[];
|
roleIdList?: string[];
|
||||||
/** 是否覆盖 */
|
/** 是否覆盖 */
|
||||||
cover: boolean;
|
cover: boolean;
|
||||||
};
|
};
|
||||||
@ -5152,7 +5279,7 @@ declare namespace BusinessAPI {
|
|||||||
/** 备注 */
|
/** 备注 */
|
||||||
remark?: string;
|
remark?: string;
|
||||||
/** 客户标签 */
|
/** 客户标签 */
|
||||||
labelId?: number[];
|
labelId?: string[];
|
||||||
/** 用户ID */
|
/** 用户ID */
|
||||||
userId: string;
|
userId: string;
|
||||||
};
|
};
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user