Commit 52481c49 authored by TZW's avatar TZW

12061031

parent f69798e6
......@@ -91,19 +91,6 @@ export default [
icon: '',
component: './repair/failure',
},
{
name: '故障设置',
path: '/repair/fault',
icon: '',
component: './repair/fault',
},
{
name: '外协工单',
path: '/repair/outsourcing',
icon: '',
component: './repair/outsourcing',
},
{
name: '维修工单',
path: '/repair/order',
......@@ -116,6 +103,18 @@ export default [
icon: '',
component: './repair/track',
},
{
name: '外协工单',
path: '/repair/outsourcing',
icon: '',
component: './repair/outsourcing',
},
{
name: '故障设置',
path: '/repair/fault',
icon: '',
component: './repair/fault',
},
],
},
{
......
......@@ -6,8 +6,8 @@ function getcolumns(setdrawer) {
columns: [
{
title: '外协单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
dataIndex: 'otherUnitsOrderNo',
key: 'otherUnitsOrderNo',
},
{
title: '设备编号',
......@@ -27,14 +27,14 @@ function getcolumns(setdrawer) {
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
dataIndex: 'createTime',
key: 'createTimeList',
valueType: 'dateTimeRange',
},
{
title: '创建人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
dataIndex: 'createUserName',
key: 'createUserName',
},
{
title: '最新外协人员',
......@@ -43,8 +43,8 @@ function getcolumns(setdrawer) {
},
{
title: '来源单号',
dataIndex: 'repairNo',
key: 'repairNo',
dataIndex: 'dataSourcesNo',
key: 'dataSourcesNo',
},
{
title: '工单状态',
......@@ -76,13 +76,13 @@ function getcolumns(setdrawer) {
},
},
{
tab: '我的待办',
key: '1',
tab: '未完成',
key: '2',
columns: [
{
title: '外协单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
dataIndex: 'otherUnitsOrderNo',
key: 'otherUnitsOrderNo',
},
{
title: '设备编号',
......@@ -102,8 +102,8 @@ function getcolumns(setdrawer) {
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
dataIndex: 'createTime',
key: 'createTimeList',
valueType: 'dateTimeRange',
},
{
......@@ -118,8 +118,8 @@ function getcolumns(setdrawer) {
},
{
title: '来源单号',
dataIndex: 'repairNo',
key: 'repairNo',
dataIndex: 'dataSourcesNo',
key: 'dataSourcesNo',
},
{
title: '工单状态',
......@@ -151,13 +151,13 @@ function getcolumns(setdrawer) {
},
},
{
tab: '我的待办',
key: '1',
tab: '已完成',
key: '3',
columns: [
{
title: '外协单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
dataIndex: 'otherUnitsOrderNo',
key: 'otherUnitsOrderNo',
},
{
title: '设备编号',
......@@ -177,8 +177,8 @@ function getcolumns(setdrawer) {
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
dataIndex: 'createTime',
key: 'createTimeList',
valueType: 'dateTimeRange',
},
{
......@@ -193,8 +193,8 @@ function getcolumns(setdrawer) {
},
{
title: '来源单号',
dataIndex: 'repairNo',
key: 'repairNo',
dataIndex: 'dataSourcesNo',
key: 'dataSourcesNo',
},
{
title: '工单状态',
......
function getcolumns(setdrawer) {
return [
{
title: '基础信息',
valueType: 'split',
},
{
title: '用户名',
dataIndex: 'accountName',
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
},
],
},
initialValue: '默认值',
hideInForm: false,
search: false,
render: (text, row) => {
return (
<a
onClick={() => {
setdrawer?.((s) => ({
...s,
visible: true,
item: null,
title: '新增',
val: 'add',
}));
}}
>
{text}
</a>
);
},
},
{
title: '姓名',
dataIndex: 'userName',
key: 'userId',
hideInForm: {
accountName: {
reverse: ['1', '2', '5'],
},
remark: ['3'],
},
search: false,
},
{
title: '额外信息',
valueType: 'split',
},
{
title: '联系电话',
dataIndex: 'telephone',
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
},
],
tab: '我的待办',
key: '1',
columns: [
{
title: '追踪单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
},
{
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
},
{
title: '设备名称',
dataIndex: 'equipmentName',
key: 'equipmentName',
},
{
title: '故障描述',
dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
},
{
title: '创建人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
},
{
title: '下次追踪日期',
dataIndex: 'nextTrackDate',
key: 'nextTrackDateList',
valueType: 'dateTimeRange',
},
{
title: '最新追踪人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
},
{
title: '来源单号',
dataIndex: 'dataSourcesNo',
key: 'dataSourcesNo',
},
{
title: '工单状态',
dataIndex: 'statusName',
key: 'status',
valueType: 'radio',
options: [
{
label: '待维修',
value: '1',
},
{
label: '维修中',
value: '2',
},
],
},
],
pathconfig: {
enableadd: true,
enableedit: false,
enabledelete: true,
enabledetail: false,
add: '',
edit: '',
list: '/repair/umFailureRepair/queryNoFinishList',
delete: '/repair/umFailureRepair/deleteById',
detail: '',
},
search: false,
},
{
title: '邮箱',
dataIndex: 'mailNo',
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
},
],
tab: '未完成',
key: '2',
columns: [
{
title: '追踪单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
},
{
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
},
{
title: '设备名称',
dataIndex: 'equipmentName',
key: 'equipmentName',
},
{
title: '故障描述',
dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
},
{
title: '创建人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
},
{
title: '最新外协人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
},
{
title: '来源单号',
dataIndex: 'repairNo',
key: 'repairNo',
},
{
title: '工单状态',
dataIndex: 'statusName',
key: 'status',
valueType: 'radio',
options: [
{
label: '待维修',
value: '1',
},
{
label: '维修中',
value: '2',
},
],
},
],
pathconfig: {
enableadd: true,
enableedit: false,
enabledelete: true,
enabledetail: false,
add: '',
edit: '',
list: '/repair/umFailureRepair/queryNoFinishList',
delete: '/repair/umFailureRepair/deleteById',
detail: '',
},
search: false,
},
{
title: '备注',
dataIndex: 'remark',
valueType: 'editor',
search: false,
colProps: { span: 24 },
initialValue: '<p>Hello <b>World!</b></p>',
},
{
title: '上传样式-图片',
dataIndex: 'uploadImage',
key: 'uploadImage',
valueType: 'uploadImage',
fieldProps: {
limit: 2,
},
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
},
],
tab: '已完成',
key: '3',
columns: [
{
title: '追踪单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
},
{
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
},
{
title: '设备名称',
dataIndex: 'equipmentName',
key: 'equipmentName',
},
{
title: '故障描述',
dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
},
{
title: '创建时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
},
{
title: '创建人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
},
{
title: '最新外协人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
},
{
title: '来源单号',
dataIndex: 'repairNo',
key: 'repairNo',
},
{
title: '工单状态',
dataIndex: 'statusName',
key: 'status',
valueType: 'radio',
options: [
{
label: '待维修',
value: '1',
},
{
label: '维修中',
value: '2',
},
],
},
],
pathconfig: {
enableadd: true,
enableedit: false,
enabledelete: true,
enabledetail: false,
add: '',
edit: '',
list: '/repair/umFailureRepair/queryNoFinishList',
delete: '/repair/umFailureRepair/deleteById',
detail: '',
},
},
];
}
export default getcolumns;
import * as React from 'react';
import { useState, useMemo, useRef } from 'react';
import DrawerPro from '@/components/DrawerPro';
import AutoTable from '@/components/AutoTable';
import PremButton from '@/components/PremButton';
import getcolumns from './columns';
import { useRequest } from 'ahooks';
import { doFetch } from '@/utils/doFetch';
/* 追踪工单
* @Author: Li Hanlin
* @Date: 2022-12-02 11:41:03
* @Last Modified by: Li Hanlin
* @Last Modified time: 2022-12-06 09:38:18
*/
const pathconfig = {
"enableadd": true,
"enableedit": true,
"enabledelete": true,
"enabledetail": true,
"add": "",
"edit": "",
"list": "",
"delete": "",
"detail": ""
};
import * as React from 'react';
import { useState, useMemo, useRef } from 'react';
import DrawerPro from '@/components/DrawerPro';
import AutoTable from '@/components/AutoTable';
import PremButton from '@/components/PremButton';
import getcolumns from './columns';
import { useRequest } from 'ahooks';
import { doFetch } from '@/utils/doFetch';
function Track(props) {
const actionRef = useRef(),
formRef = useRef();
const [drawer, setdrawer] = useState({
function Failure(props) {
const actionRef = useRef(),
formRef = useRef();
const [drawer, setdrawer] = useState({
open: false,
});
}),
[activeTabKey, setactiveTabKey] = useState('1');
const { run, loading } = useRequest(doFetch, {
manual: true,
onSuccess: (res, params) => {
if (res?.code == '0000') {
actionRef?.current?.reload();
setdrawer((s) => ({
...s,
open: false,
}));
}
},
const { run, loading } = useRequest(doFetch, {
manual: true,
onSuccess: (res, params) => {
if (res?.code == '0000') {
actionRef?.current?.reload();
setdrawer((s) => ({
...s,
open: false,
}));
}
},
});
const detail = (text, row, _, action) => {
return (
<PremButton
btn={{
size: 'small',
type: 'link',
onClick: () => {
setdrawer((s) => ({
...s,
open: true,
item: row,
title: '详情',
val: 'detail',
title: '详细信息',
}));
},
}}
>
详情
</PremButton>
);
};
const edit = (text, row, _, action) => {
return (
<PremButton
btn={{
size: 'small',
onClick: () => {
setdrawer((s) => ({
...s,
open: true,
item: row,
title: '编辑',
val: 'edit',
}));
},
}}
>
编辑
</PremButton>
);
};
const remove = (text, row, _, action) => {
return (
<PremButton
pop={{
title: '是否删除?',
okText: '确认',
cancelText: '取消',
onConfirm: () => {
run({ url: pathconfig?.delete || '/delete', params: { id: row?.id } });
},
}}
btn={{
size: 'small',
type: 'danger',
}}
>
删除
</PremButton>
);
};
const columns = useMemo(() => {
let defcolumn = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.columns;
let defpath = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.pathconfig ?? {};
return defcolumn.concat({
title: '操作',
valueType: 'option',
width: 150,
render: (text, row, _, action) => [
defpath?.enabledetail && detail(text, row, _, action),
defpath?.enableedit && edit(text, row, _, action),
defpath?.enabledelete && remove(text, row, _, action),
],
});
}, [activeTabKey]);
const detail = (text, row, _, action) => {
return (
<PremButton
btn={{
size: 'small',
type: 'link',
onClick: () => {
setdrawer((s) => ({
...s,
open: true,
item: row,
title: '详情',
val: 'detail',
title: '详细信息',
}));
},
}}
>
详情
</PremButton>
);
};
const pathconfig = useMemo(() => {
let defpath = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.pathconfig ?? {};
return defpath;
}, [activeTabKey]);
const edit = (text, row, _, action) => {
return (
<PremButton
btn={{
size: 'small',
const selectType = (type) => {
switch (type) {
case 'add':
return;
default:
break;
}
};
return (
<div style={{ position: 'relative' }}>
<AutoTable
pagetitle={<h3 className="page-title">追踪工单</h3>}
columns={columns}
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
actionRef={actionRef}
pageextra={pathconfig?.enableadd ? 'add' : null}
resizeable={true}
addconfig={{
// access: 'sysDepartment_save',
btn: {
disabled: false,
type: 'primary',
onClick: () => {
setdrawer((s) => ({
...s,
open: true,
item: row,
title: '编辑',
val: 'edit',
item: null,
title: '新增',
val: 'only',
type: 'add',
}));
},
}}
>
编辑
</PremButton>
);
};
const remove = (text, row, _, action) => {
return (
<PremButton
pop={{
title: '是否删除?',
okText: '确认',
cancelText: '取消',
onConfirm: () => {
run({ url: pathconfig?.delete || '/delete', params: { id: row?.id } });
},
}}
btn={{
size: 'small',
type: 'danger',
}}
>
删除
</PremButton>
);
};
},
}}
tabList={getcolumns()}
activeTabKey={activeTabKey}
onTabChange={(key) => {
setactiveTabKey(key);
}}
/>
const columns = useMemo(() => {
let defcolumn = getcolumns(setdrawer);
return defcolumn.concat({
title: '操作',
valueType: 'option',
width: 150,
render: (text, row, _, action) => [
pathconfig?.enabledetail && detail(text, row, _, action),
pathconfig?.enableedit && edit(text, row, _, action),
pathconfig?.enabledelete && remove(text, row, _, action),
],
});
}, []);
return (
<div style={{ position: 'relative' }}>
<AutoTable
pagetitle="追踪工单"
columns={columns}
actionRef={actionRef}
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
pageextra={pathconfig?.enableadd ? 'add' : null}
resizeable={true}
addconfig={{
// access: 'sysDepartment_save',
btn: {
disabled: false,
onClick: () => {
setdrawer((s) => ({
...s,
open: true,
item: null,
title: '新增',
val: 'add',
}));
},
},
}}
/>
<DrawerPro
fields={columns}
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
detailpath={pathconfig?.detail || null}
detailData={drawer?.item}
defaultFormValue={drawer?.item}
onClose={() => {
setdrawer((s) => ({
...s,
open: false,
}));
}}
{...drawer}
onFinish={(vals) => {
if (drawer?.val == 'add') {
run({ url: pathconfig?.add || '/add', params: { ...vals } });
} else if (drawer?.val == 'edit') {
run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } });
}
}}
/>
</div>
);
}
<DrawerPro
fields={columns}
detailpath={pathconfig?.detail || null}
detailData={drawer?.item}
defaultFormValue={drawer?.item}
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
onClose={() => {
setdrawer((s) => ({
...s,
open: false,
}));
}}
{...drawer}
onFinish={(vals) => {
if (drawer?.val == 'add') {
run({ url: pathconfig?.add || '/add', params: { ...vals } });
} else if (drawer?.val == 'edit') {
run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } });
}
}}
>
{selectType(drawer?.type)}
</DrawerPro>
</div>
);
}
export default Track;
\ No newline at end of file
export default Failure;
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