flat: 提交石河子案件管理
Some checks failed
Node CI / build (14.x, macOS-latest) (push) Has been cancelled
Node CI / build (14.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (14.x, windows-latest) (push) Has been cancelled
Node CI / build (16.x, macOS-latest) (push) Has been cancelled
Node CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (16.x, windows-latest) (push) Has been cancelled
coverage CI / build (push) Has been cancelled
Node pnpm CI / build (16.x, macOS-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, windows-latest) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
Some checks failed
Node CI / build (14.x, macOS-latest) (push) Has been cancelled
Node CI / build (14.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (14.x, windows-latest) (push) Has been cancelled
Node CI / build (16.x, macOS-latest) (push) Has been cancelled
Node CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node CI / build (16.x, windows-latest) (push) Has been cancelled
coverage CI / build (push) Has been cancelled
Node pnpm CI / build (16.x, macOS-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, ubuntu-latest) (push) Has been cancelled
Node pnpm CI / build (16.x, windows-latest) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
This commit is contained in:
177
src/pages/CaseManagementAndTracking/CaseManagement/index.tsx
Normal file
177
src/pages/CaseManagementAndTracking/CaseManagement/index.tsx
Normal file
@@ -0,0 +1,177 @@
|
|||||||
|
import React, { Fragment, useRef, useState } from 'react';
|
||||||
|
import { Button, FormInstance, message } from 'antd';
|
||||||
|
import { ActionType, ProColumns, ProTable } from '@ant-design/pro-components';
|
||||||
|
|
||||||
|
export default function CaseManagement() {
|
||||||
|
const actionRef = useRef<ActionType>();
|
||||||
|
const formTableRef = useRef<FormInstance>()
|
||||||
|
|
||||||
|
const columns: ProColumns<API.StorageDetection.StorageItem>[] = [
|
||||||
|
{
|
||||||
|
title: '序号',
|
||||||
|
dataIndex: 'storageDate',
|
||||||
|
valueType: 'text',
|
||||||
|
render: (_, record, index) => index + 1,
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '投诉编号',
|
||||||
|
dataIndex: 'detectionId',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '行业类别',
|
||||||
|
dataIndex: 'industry',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '用工所在地',
|
||||||
|
dataIndex: 'address',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '投诉单位',
|
||||||
|
dataIndex: 'unit',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '投诉人',
|
||||||
|
dataIndex: 'websiteName',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '投诉人手机号',
|
||||||
|
dataIndex: 'number',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '欠薪人数',
|
||||||
|
dataIndex: 'wage',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '欠薪金额(万元)',
|
||||||
|
dataIndex: 'amount',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '欠薪日期',
|
||||||
|
dataIndex: 'storageDate',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '欠薪区域',
|
||||||
|
dataIndex: 'wageArrearsArea',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
ellipsis: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '案件状态',
|
||||||
|
dataIndex: 'failedReason',
|
||||||
|
valueType: 'text',
|
||||||
|
align: 'center',
|
||||||
|
hideInSearch: true,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '操作状态',
|
||||||
|
dataIndex: 'failedReason',
|
||||||
|
valueType: 'text',
|
||||||
|
hideInSearch: true,
|
||||||
|
align: 'center',
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// title: '操作',
|
||||||
|
// hideInSearch: true,
|
||||||
|
// align: 'center',
|
||||||
|
// dataIndex: 'detectionId',
|
||||||
|
// width: 120,
|
||||||
|
// // render: (detectionId, record) => (
|
||||||
|
// // <div style={{ display: 'flex', justifyContent: 'center', gap: 8 }}>
|
||||||
|
// // <Button
|
||||||
|
// // type="link"
|
||||||
|
// // size="small"
|
||||||
|
// // key="view"
|
||||||
|
// // icon={<EyeOutlined />}
|
||||||
|
// // loading={loading}
|
||||||
|
// // hidden={!access.hasPerms('recruitmentDataCollection:jobMonitor:view')}
|
||||||
|
// // onClick={() => handleViewDetail(detectionId)}
|
||||||
|
// // >
|
||||||
|
// // 查看详情
|
||||||
|
// // </Button>
|
||||||
|
// // </div>
|
||||||
|
// // ),
|
||||||
|
// },
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<div style={{ width: '100%', float: 'right' }}>
|
||||||
|
<ProTable<API.StorageDetection.StorageItem>
|
||||||
|
actionRef={actionRef}
|
||||||
|
formRef={formTableRef}
|
||||||
|
rowKey="detectionId"
|
||||||
|
key="storageDetectionIndex"
|
||||||
|
columns={columns}
|
||||||
|
search={{ labelWidth: 'auto' }}
|
||||||
|
request={async (params) => {
|
||||||
|
// 模拟 API 响应
|
||||||
|
return {
|
||||||
|
data: [
|
||||||
|
{
|
||||||
|
detectionId: '230',
|
||||||
|
storageDate: '2023-01-01',
|
||||||
|
storageDetail: '存储详情1',
|
||||||
|
failedReason: '正在处理',
|
||||||
|
industry: '销售',
|
||||||
|
address: '石河子',
|
||||||
|
unit: '石河子市水利局',
|
||||||
|
websiteName: '测试1',
|
||||||
|
number: '1234567890',
|
||||||
|
wage: '2',
|
||||||
|
amount: '1111',
|
||||||
|
wageArrearsArea: '石河子市',
|
||||||
|
|
||||||
|
// ... 其他字段
|
||||||
|
},
|
||||||
|
{
|
||||||
|
detectionId: '231',
|
||||||
|
storageDate: '2023-01-01',
|
||||||
|
storageDetail: '存储详情1',
|
||||||
|
failedReason: '正在处理',
|
||||||
|
industry: '销售',
|
||||||
|
address: '石河子',
|
||||||
|
unit: '石河子市水利局',
|
||||||
|
websiteName: '测试1',
|
||||||
|
number: '1234567890',
|
||||||
|
wage: '2',
|
||||||
|
amount: '1111',
|
||||||
|
wageArrearsArea: '石河子市',
|
||||||
|
|
||||||
|
// ... 其他字段
|
||||||
|
},
|
||||||
|
],
|
||||||
|
total: 2,
|
||||||
|
success: true,
|
||||||
|
};
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -17,6 +17,7 @@ export function setRemoteMenu(data: any) {
|
|||||||
|
|
||||||
function patchRouteItems(route: any, menu: any, parentPath: string) {
|
function patchRouteItems(route: any, menu: any, parentPath: string) {
|
||||||
for (const menuItem of menu) {
|
for (const menuItem of menu) {
|
||||||
|
console.log(menuItem, 'menuItem')
|
||||||
if (menuItem.component === 'Layout' || menuItem.component === 'ParentView') {
|
if (menuItem.component === 'Layout' || menuItem.component === 'ParentView') {
|
||||||
if (menuItem.routes) {
|
if (menuItem.routes) {
|
||||||
let hasItem = false;
|
let hasItem = false;
|
||||||
@@ -38,9 +39,10 @@ function patchRouteItems(route: any, menu: any, parentPath: string) {
|
|||||||
patchRouteItems(newItem, menuItem.routes, parentPath + menuItem.path + '/');
|
patchRouteItems(newItem, menuItem.routes, parentPath + menuItem.path + '/');
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
const names: string[] = menuItem.component.split('/');
|
const names: string[] = menuItem.component && menuItem.component.split('/');
|
||||||
|
console.log(names, 'names')
|
||||||
let path = '';
|
let path = '';
|
||||||
names.forEach(name => {
|
names && names.forEach(name => {
|
||||||
if (path.length > 0) {
|
if (path.length > 0) {
|
||||||
path += '/';
|
path += '/';
|
||||||
}
|
}
|
||||||
|
|||||||
49
src/types/CaseManagementAndTracking/CaseManagement.d.ts
vendored
Normal file
49
src/types/CaseManagementAndTracking/CaseManagement.d.ts
vendored
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
declare namespace API.StorageDetection {
|
||||||
|
export interface StorageDetailItem {
|
||||||
|
detailId?: string;
|
||||||
|
websiteId?: string;
|
||||||
|
websiteName?: string;
|
||||||
|
successNumber?: string;
|
||||||
|
failedNumber?: string;
|
||||||
|
storageDetail?: string;
|
||||||
|
storageTime?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface StorageItem {
|
||||||
|
detectionId?: string;
|
||||||
|
storageDate?: string;
|
||||||
|
storageNumber?: string;
|
||||||
|
storageResult?: string;
|
||||||
|
storageDetail?: string;
|
||||||
|
websiteId?: string;
|
||||||
|
websiteName?: string;
|
||||||
|
details?: StorageDetailItem[];
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface AddParams {
|
||||||
|
storageDate?: string;
|
||||||
|
storageNumber?: string;
|
||||||
|
storageResult?: string;
|
||||||
|
storageDetail?: string;
|
||||||
|
websiteName?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface ListParams {
|
||||||
|
storageDate?: string;
|
||||||
|
pageSize?: number;
|
||||||
|
current?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface StorageIdResult {
|
||||||
|
code: number;
|
||||||
|
msg: string;
|
||||||
|
data: StorageItem;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface StoragePageResult {
|
||||||
|
code: number;
|
||||||
|
msg: string;
|
||||||
|
total: number;
|
||||||
|
rows: Array<StorageItem>;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user