Commit 7b6fce2b authored by TZW's avatar TZW

12060914

parent 2c4a903a
function getcolumns(setdrawer) { function getcolumns(setdrawer) {
return [ return [
{ {
"title": "故障类型", title: '故障类型',
"dataIndex": "faultType", dataIndex: 'faultType',
"key": "faultType" key: 'faultType',
}, },
{ {
"title": "故障代码", title: '故障代码',
"dataIndex": "faultCode", dataIndex: 'faultCode',
"key": "faultCode" key: 'faultCode',
}, },
{ {
"title": "设备类型", title: '设备类型',
"dataIndex": "equipmentTypeName", dataIndex: 'equipmentTypeName',
"key": "equipmentTypeId", key: 'equipmentTypeId',
"valueType": "treeSelect", valueType: 'treeSelect',
"options": { options: {
"path": "/asset/equipmentType/queryTreeList", path: '/asset/equipmentType/queryTreeList',
"params": {} params: {},
} },
}, },
{ {
"title": "备注", title: '备注',
"dataIndex": "remark", dataIndex: 'remark',
"key": "remark", key: 'remark',
"valueType": "textarea" valueType: 'textarea',
} },
]; ];
} }
export default getcolumns; export default getcolumns;
\ No newline at end of file
...@@ -44,7 +44,6 @@ function Fault(props) { ...@@ -44,7 +44,6 @@ function Fault(props) {
<PremButton <PremButton
btn={{ btn={{
size: 'small', size: 'small',
type: 'link',
onClick: () => { onClick: () => {
setdrawer((s) => ({ setdrawer((s) => ({
...s, ...s,
...@@ -57,7 +56,7 @@ function Fault(props) { ...@@ -57,7 +56,7 @@ function Fault(props) {
}, },
}} }}
> >
详情 故障名称
</PremButton> </PremButton>
); );
}; };
...@@ -121,7 +120,7 @@ function Fault(props) { ...@@ -121,7 +120,7 @@ function Fault(props) {
return ( return (
<div style={{ position: 'relative' }}> <div style={{ position: 'relative' }}>
<AutoTable <AutoTable
pagetitle={<h3 className="page-title">故障类型</h3>} pagetitle={<h3 className="page-title">故障设置</h3>}
columns={columns} columns={columns}
actionRef={actionRef} actionRef={actionRef}
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'} path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
......
function getcolumns(setdrawer) { function getcolumns(setdrawer) {
return [ return [
{ {
title: '基础信息', tab: '我的待办',
valueType: 'split', key: '1',
columns: [
{
title: '维修单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
},
{
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
}, },
{ {
title: '用户名', title: '设备名称',
dataIndex: 'accountName', dataIndex: 'equipmentName',
formItemProps: { key: 'equipmentName',
rules: [ },
{ {
required: false, title: '故障描述',
message: '此项为必填项', dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
},
{
title: '报修人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
},
{
title: '报修时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
},
{
title: '最新维修人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
},
{
title: '报修单号',
dataIndex: 'repairNo',
key: 'repairNo',
},
{
title: '工单状态',
dataIndex: 'statusName',
key: 'status',
valueType: 'radio',
options: [
{
label: '待维修',
value: '1',
},
{
label: '维修中',
value: '2',
}, },
], ],
}, },
initialValue: '默认值', ],
hideInForm: false, pathconfig: {
search: false, enableadd: true,
render: (text, row) => { enableedit: false,
return ( enabledelete: true,
<a enabledetail: false,
onClick={() => { add: '',
setdrawer?.((s) => ({ edit: '',
...s, list: '/repair/umFailureRepair/queryNoFinishList',
visible: true, delete: '/repair/umFailureRepair/deleteById',
item: null, detail: '',
title: '新增',
val: 'add',
}));
}}
>
{text}
</a>
);
}, },
}, },
{ {
title: '姓名', tab: '未完成',
dataIndex: 'userName', key: '2',
key: 'userId', columns: [
hideInForm: { {
accountName: { title: '维修单号',
reverse: ['1', '2', '5'], dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
}, },
remark: ['3'], {
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
}, },
search: false, {
title: '设备名称',
dataIndex: 'equipmentName',
key: 'equipmentName',
}, },
{ {
title: '额外信息', title: '故障描述',
valueType: 'split', dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
}, },
{ {
title: '联系电话', title: '报修人员',
dataIndex: 'telephone', dataIndex: 'repairUserName',
formItemProps: { key: 'repairUserName',
rules: [ },
{ {
required: false, title: '报修时间',
message: '此项为必填项', dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
}, },
], {
title: '最新维修人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
}, },
search: false, {
title: '报修单号',
dataIndex: 'repairNo',
key: 'repairNo',
}, },
{ {
title: '邮箱', title: '工单状态',
dataIndex: 'mailNo', dataIndex: 'statusName',
formItemProps: { key: 'status',
rules: [ valueType: 'radio',
options: [
{ {
required: false, label: '待维修',
message: '此项为必填项', value: '1',
},
{
label: '维修中',
value: '2',
},
],
}, },
], ],
pathconfig: {
enableadd: true,
enableedit: true,
enabledelete: true,
enabledetail: true,
add: '',
edit: '',
list: '/repair/umFailureRepair/queryFinishList',
delete: '/repair/umFailureRepair/deleteById',
detail: '',
},
},
{
tab: '已完成',
key: '3',
columns: [
{
title: '维修单号',
dataIndex: 'repairOrderNo',
key: 'repairOrderNo',
},
{
title: '设备编号',
dataIndex: 'equipmentNo',
key: 'equipmentNo',
},
{
title: '设备名称',
dataIndex: 'equipmentName',
key: 'equipmentName',
}, },
search: false, {
title: '故障描述',
dataIndex: 'faultDescription',
key: 'faultDescription',
valueType: 'textarea',
},
{
title: '报修人员',
dataIndex: 'repairUserName',
key: 'repairUserName',
},
{
title: '报修时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
},
{
title: '最新维修人员',
dataIndex: 'newRepairUserName',
key: 'newRepairUserName',
},
{
title: '关单时间',
dataIndex: 'repairTime',
key: 'repairTimeList',
valueType: 'dateTimeRange',
}, },
{ {
title: '备注', title: '报修单号',
dataIndex: 'remark', dataIndex: 'repairNo',
valueType: 'editor', key: 'repairNo',
search: false,
colProps: { span: 24 },
initialValue: '<p>Hello <b>World!</b></p>',
}, },
{ {
title: '上传样式-图片', title: '工单状态',
dataIndex: 'uploadImage', dataIndex: 'statusName',
key: 'uploadImage', key: 'status',
valueType: 'uploadImage', valueType: 'radio',
fieldProps: { options: [
limit: 2, {
label: '待维修',
value: '1',
}, },
formItemProps: {
rules: [
{ {
required: false, label: '维修中',
message: '此项为必填项', value: '2',
},
],
}, },
], ],
pathconfig: {
enableadd: true,
enableedit: true,
enabledelete: true,
enabledetail: true,
add: '',
edit: '',
list: '/repair/umFailureRepair/queryFinishList',
delete: '/repair/umFailureRepair/deleteById',
detail: '',
}, },
}, },
]; ];
} }
export default getcolumns; export default getcolumns;
/* 故障报修
* @Author: Li Hanlin
* @Date: 2022-12-02 11:41:03
* @Last Modified by: Li Hanlin
* @Last Modified time: 2022-12-06 09:04:06
*/
import * as React from 'react'; import * as React from 'react';
import { useState, useMemo, useRef } from 'react'; import { useState, useMemo, useRef } from 'react';
import DrawerPro from '@/components/DrawerPro'; import DrawerPro from '@/components/DrawerPro';
...@@ -7,24 +14,13 @@ import getcolumns from './columns'; ...@@ -7,24 +14,13 @@ import getcolumns from './columns';
import { useRequest } from 'ahooks'; import { useRequest } from 'ahooks';
import { doFetch } from '@/utils/doFetch'; import { doFetch } from '@/utils/doFetch';
const pathconfig = { function Failure(props) {
enableadd: true,
enableedit: true,
enabledelete: true,
enabledetail: true,
add: '',
edit: '',
list: '',
delete: '',
detail: '',
};
function Order(props) {
const actionRef = useRef(), const actionRef = useRef(),
formRef = useRef(); formRef = useRef();
const [drawer, setdrawer] = useState({ const [drawer, setdrawer] = useState({
open: false, open: false,
}); }),
[activeTabKey, setactiveTabKey] = useState('1');
const { run, loading } = useRequest(doFetch, { const { run, loading } = useRequest(doFetch, {
manual: true, manual: true,
...@@ -105,53 +101,74 @@ function Order(props) { ...@@ -105,53 +101,74 @@ function Order(props) {
}; };
const columns = useMemo(() => { const columns = useMemo(() => {
let defcolumn = getcolumns(setdrawer); 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({ return defcolumn.concat({
title: '操作', title: '操作',
valueType: 'option', valueType: 'option',
width: 150, width: 150,
render: (text, row, _, action) => [ render: (text, row, _, action) => [
pathconfig?.enabledetail && detail(text, row, _, action), defpath?.enabledetail && detail(text, row, _, action),
pathconfig?.enableedit && edit(text, row, _, action), defpath?.enableedit && edit(text, row, _, action),
pathconfig?.enabledelete && remove(text, row, _, action), defpath?.enabledelete && remove(text, row, _, action),
], ],
}); });
}, []); }, [activeTabKey]);
const pathconfig = useMemo(() => {
let defpath = getcolumns(setdrawer).filter((it) => it.key == activeTabKey)[0]?.pathconfig ?? {};
return defpath;
}, [activeTabKey]);
const selectType = (type) => {
switch (type) {
case 'add':
return <Addform />;
default:
break;
}
};
return ( return (
<div style={{ position: 'relative' }}> <div style={{ position: 'relative' }}>
<AutoTable <AutoTable
pagetitle="维修工单" pagetitle={<h3 className="page-title">维修工单</h3>}
columns={columns} columns={columns}
actionRef={actionRef}
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'} path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
actionRef={actionRef}
pageextra={pathconfig?.enableadd ? 'add' : null} pageextra={pathconfig?.enableadd ? 'add' : null}
resizeable={true} resizeable={true}
addconfig={{ addconfig={{
// access: 'sysDepartment_save', // access: 'sysDepartment_save',
btn: { btn: {
disabled: false, disabled: false,
type: 'primary',
onClick: () => { onClick: () => {
setdrawer((s) => ({ setdrawer((s) => ({
...s, ...s,
open: true, open: true,
item: null, item: null,
title: '新增', title: '新增',
val: 'add', val: 'only',
type: 'add',
})); }));
}, },
}, },
}} }}
tabList={getcolumns()}
activeTabKey={activeTabKey}
onTabChange={(key) => {
setactiveTabKey(key);
}}
/> />
<DrawerPro <DrawerPro
fields={columns} fields={columns}
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
detailpath={pathconfig?.detail || null} detailpath={pathconfig?.detail || null}
detailData={drawer?.item} detailData={drawer?.item}
defaultFormValue={drawer?.item} defaultFormValue={drawer?.item}
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
onClose={() => { onClose={() => {
setdrawer((s) => ({ setdrawer((s) => ({
...s, ...s,
...@@ -166,9 +183,11 @@ function Order(props) { ...@@ -166,9 +183,11 @@ function Order(props) {
run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } }); run({ url: pathconfig?.edit || '/edit', params: { ...vals, id: drawer?.item?.id } });
} }
}} }}
/> >
{selectType(drawer?.type)}
</DrawerPro>
</div> </div>
); );
} }
export default Order; 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