Commit 73ad6159 authored by wuhao's avatar wuhao 🎯

adder

parent d2fa39b1
export default [
{
path: '/welcome',
name: '欢迎',
icon: 'smile',
component: './Welcome',
"path": "/welcome",
"name": "欢迎",
"icon": "smile",
"component": "./Welcome"
},
{
name: '基础设置',
icon: 'setting',
path: '/setting',
routes: [
"name": "基础设置",
"icon": "setting",
"path": "/setting",
"routes": [
{
name: '用户管理',
path: '/setting/users',
component: './setting/users',
"name": "用户管理",
"path": "/setting/users",
"component": "./setting/users"
},
{
name: '角色管理',
path: '/setting/role',
component: './setting/role',
"name": "角色管理",
"path": "/setting/role",
"component": "./setting/role"
},
{
name: '组织管理',
path: '/setting/organization',
component: './setting/organization',
"name": "组织管理",
"path": "/setting/organization",
"component": "./setting/organization"
},
{
name: '工厂管理',
path: '/setting/factory',
component: './setting/factory',
"name": "工厂管理",
"path": "/setting/factory",
"component": "./setting/factory"
},
{
name: '车间管理',
path: '/setting/workshop',
component: './setting/workshop',
"name": "车间管理",
"path": "/setting/workshop",
"component": "./setting/workshop"
},
{
name: '工段管理',
path: '/setting/section',
component: './setting/section',
"name": "工段管理",
"path": "/setting/section",
"component": "./setting/section"
},
{
name: '产线管理',
path: '/setting/production',
component: './setting/production',
},
],
"name": "产线管理",
"path": "/setting/production",
"component": "./setting/production"
}
]
},
{
name: '设备管理',
icon: 'bulb',
path: '/device',
routes: [
"name": "设备管理",
"icon": "bulb",
"path": "/device",
"routes": [
{
name: '设备台账',
path: '/device/account',
component: './device/account',
"name": "设备台账",
"path": "/device/account",
"component": "./device/account"
},
{
name: '设备类型',
path: '/device/type',
component: './device/type',
"name": "设备类型",
"path": "/device/type",
"component": "./device/type"
},
{
name: '设备型号',
path: '/device/model',
component: './device/model',
"name": "设备型号",
"path": "/device/model",
"component": "./device/model"
},
{
name: '设备供应商',
path: '/device/supplier',
component: './device/supplier',
},
],
"name": "设备供应商",
"path": "/device/supplier",
"component": "./device/supplier"
}
]
},
{
name: '维修管理',
path: '/repair',
icon: 'tool',
routes: [
"name": "维修管理",
"path": "/repair",
"icon": "tool",
"routes": [
{
name: '故障报修',
path: '/repair/failure',
icon: '',
component: './repair/failure',
"name": "故障报修",
"path": "/repair/failure",
"icon": "",
"component": "./repair/failure"
},
],
},
{
name: '系统管理',
path: '/system',
icon: 'desktop',
routes: [
{
name: '数据字典',
path: '/system/dictionary',
icon: '',
component: './system/dictionary',
"name": "接单平台",
"path": "/repair/platform",
"icon": "",
"component": "./repair/platform"
},
{
name: '扩展字段',
path: '/system/field',
icon: '',
component: './system/field',
"name": "故障设置",
"path": "/repair/fault",
"icon": "",
"component": "./repair/fault"
}
]
},
{
name: '编号规则',
path: '/system/rules',
icon: '',
component: './system/rules',
"name": "系统管理",
"path": "/system",
"icon": "desktop",
"routes": [
{
"name": "数据字典",
"path": "/system/dictionary",
"icon": "",
"component": "./system/dictionary"
},
],
{
"name": "扩展字段",
"path": "/system/field",
"icon": "",
"component": "./system/field"
},
{
"name": "编号规则",
"path": "/system/rules",
"icon": "",
"component": "./system/rules"
}
]
}
];
\ No newline at end of file
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: '此项为必填项',
},
],
},
search: false,
},
{
title: '邮箱',
dataIndex: 'mailNo',
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
},
],
},
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: '此项为必填项',
},
],
},
},
];
}
"title": "故障类型",
"dataIndex": "faultType",
"key": "faultType"
},
{
"title": "故障代码",
"dataIndex": "faultCode",
"key": "faultCode"
},
{
"title": "设备类型",
"dataIndex": "equipmentTypeName",
"key": "equipmentTypeId",
"valueType": "treeSelect",
"options": {
"path": "/asset/equipmentType/queryTreeList",
"params": {}
}
},
{
"title": "备注",
"dataIndex": "remark",
"key": "remark",
"valueType": "textarea"
}
];
}
export default getcolumns;
\ No newline at end of file
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 { 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 Fault(props) {
const pathconfig = {
"enableadd": true,
"enableedit": true,
"enabledelete": true,
"enabledetail": true,
"add": "/repair/umFaultSetting/save",
"edit": "/repair/umFaultSetting/save",
"list": "/repair/umFaultSetting/queryList",
"delete": "/repair/umFaultSetting/deleteById",
"detail": ""
};
function Fault(props) {
const actionRef = useRef(),
formRef = useRef();
const [drawer, setdrawer] = useState({
visible: false,
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) => {
......@@ -21,11 +48,11 @@ function Fault(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: row,
title: '详情',
val: 'detail',
title: row.userName + '的详细信息',
title: '详细信息',
}));
},
}}
......@@ -43,7 +70,7 @@ function Fault(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: row,
title: '编辑',
val: 'edit',
......@@ -60,11 +87,11 @@ function Fault(props) {
return (
<PremButton
pop={{
title: '是否删除该用户?',
title: '是否删除?',
okText: '确认',
cancelText: '取消',
onConfirm: () => {
alert(0);
run({ url: pathconfig?.delete || '/delete', params: { id: row?.id } });
},
}}
btn={{
......@@ -84,9 +111,9 @@ function Fault(props) {
valueType: 'option',
width: 150,
render: (text, row, _, action) => [
detail(text, row, _, action),
edit(text, row, _, action),
remove(text, row, _, action),
pathconfig?.enabledetail && detail(text, row, _, action),
pathconfig?.enableedit && edit(text, row, _, action),
pathconfig?.enabledelete && remove(text, row, _, action),
],
});
}, []);
......@@ -96,9 +123,9 @@ function Fault(props) {
<AutoTable
pagetitle="故障设置"
columns={columns}
path="/ngic-auth/sysUser/query/page"
actionRef={actionRef}
pageextra={'add'}
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
pageextra={pathconfig?.enableadd ? 'add' : null}
resizeable={true}
addconfig={{
// access: 'sysDepartment_save',
......@@ -107,7 +134,7 @@ function Fault(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: null,
title: '新增',
val: 'add',
......@@ -119,20 +146,29 @@ function Fault(props) {
<DrawerPro
fields={columns}
detailpath="/ngic-auth/sysUser/query/detail"
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
detailpath={pathconfig?.detail || null}
detailData={drawer?.item}
defaultFormValue={drawer?.item}
onClose={() => {
setdrawer((s) => ({
...s,
visible: false,
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>
);
}
}
export default Fault;
\ No newline at end of file
export default Fault;
\ No newline at end of file
function getcolumns(setdrawer) {
return [
{
title: '基础信息',
valueType: 'split',
},
"tab": "维修工单",
"key": "1",
"columns": [
{
title: '用户名',
dataIndex: 'accountName',
formItemProps: {
rules: [
"title": "维修单号",
"dataIndex": "repairOrderNo",
"key": "repairOrderNo"
},
{
required: false,
message: '此项为必填项',
"title": "设备编号",
"dataIndex": "equipmentNo",
"key": "equipmentNo"
},
],
{
"title": "设备名称",
"dataIndex": "equipmentName",
"key": "equipmentName"
},
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": "faultDescription",
"key": "faultDescription"
},
{
"title": "报修人员",
"dataIndex": "repairUserName",
"key": "repairUserName"
},
{
title: '姓名',
dataIndex: 'userName',
key: 'userId',
hideInForm: {
accountName: {
reverse: ['1', '2', '5'],
"title": "报修时间",
"dataIndex": "repairTime",
"key": "repairTimeList",
"valueType": "dateTimeRange"
},
remark: ['3'],
{
"title": "报修单号",
"dataIndex": "repairNo",
"key": "repairNo"
},
search: false,
{
"title": "工单状态",
"dataIndex": "statusName",
"key": "statusName"
}
],
"pathconfig": {
"enableadd": false,
"enableedit": false,
"enabledelete": false,
"enabledetail": false,
"add": "",
"edit": "",
"list": "/repair/umRepairOrder/queryRepairOrderList",
"delete": "",
"detail": ""
}
},
{
title: '额外信息',
valueType: 'split',
"tab": "追踪工单",
"key": "2",
"columns": [
{
"title": "追踪单号",
"dataIndex": "taskOrderNo",
"key": "taskOrderNo"
},
{
title: '联系电话',
dataIndex: 'telephone',
formItemProps: {
rules: [
"title": "设备编号",
"dataIndex": "equipmentNo",
"key": "equipmentNo"
},
{
required: false,
message: '此项为必填项',
"title": "设备名称",
"dataIndex": "equipmentName",
"key": "equipmentName"
},
],
{
"title": "故障描述",
"dataIndex": "faultDescription",
"key": "faultDescription"
},
search: false,
{
"title": "创建时间",
"dataIndex": "createTime",
"key": "createTime"
},
{
title: '邮箱',
dataIndex: 'mailNo',
formItemProps: {
rules: [
"title": "创建人员",
"dataIndex": "createUserName",
"key": "createUserName"
},
{
required: false,
message: '此项为必填项',
"title": "来源单号",
"dataIndex": "dataSourcesNo",
"key": "dataSourcesNo"
},
{
"title": "工单状态",
"dataIndex": "statusName",
"key": "statusName"
}
],
"pathconfig": {
"enableadd": false,
"enableedit": false,
"enabledelete": false,
"enabledetail": false,
"add": "",
"edit": "",
"list": "/repair/umTrackOrder/queryTrackOrderList",
"delete": "",
"detail": ""
}
},
search: false,
{
"tab": "外协工单",
"key": "3",
"columns": [
{
"title": "维修单号",
"dataIndex": "repairOrderNo",
"key": "repairOrderNo"
},
{
title: '备注',
dataIndex: 'remark',
valueType: 'editor',
search: false,
colProps: { span: 24 },
initialValue: '<p>Hello <b>World!</b></p>',
"title": "设备编号",
"dataIndex": "equipmentNo",
"key": "equipmentNo"
},
{
title: '上传样式-图片',
dataIndex: 'uploadImage',
key: 'uploadImage',
valueType: 'uploadImage',
fieldProps: {
limit: 2,
"title": "设备名称",
"dataIndex": "equipmentName",
"key": "equipmentName"
},
formItemProps: {
rules: [
{
required: false,
message: '此项为必填项',
"title": "故障描述",
"dataIndex": "faultDescription",
"key": "faultDescription"
},
],
{
"title": "报修人员",
"dataIndex": "repairUserName",
"key": "repairUserName"
},
{
"title": "报修时间",
"dataIndex": "repairTime",
"key": "repairTimeList",
"valueType": "dateTimeRange"
},
{
"title": "报修单号",
"dataIndex": "repairNo",
"key": "repairNo"
},
];
}
{
"title": "工单状态",
"dataIndex": "statusName",
"key": "statusName"
}
],
"pathconfig": {
"enableadd": true,
"enableedit": true,
"enabledelete": true,
"enabledetail": true,
"add": "",
"edit": "",
"list": "",
"delete": "",
"detail": ""
}
}
];
}
export default getcolumns;
\ No newline at end of file
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 { 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 Platform(props) {
function Platform(props) {
const actionRef = useRef(),
formRef = useRef();
const [drawer, setdrawer] = useState({
visible: false,
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 detail = (text, row, _, action) => {
......@@ -21,11 +37,11 @@ function Platform(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: row,
title: '详情',
val: 'detail',
title: row.userName + '的详细信息',
title: '详细信息',
}));
},
}}
......@@ -43,7 +59,7 @@ function Platform(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: row,
title: '编辑',
val: 'edit',
......@@ -60,11 +76,11 @@ function Platform(props) {
return (
<PremButton
pop={{
title: '是否删除该用户?',
title: '是否删除?',
okText: '确认',
cancelText: '取消',
onConfirm: () => {
alert(0);
run({ url: pathconfig?.delete || '/delete', params: { id: row?.id } });
},
}}
btn={{
......@@ -78,27 +94,33 @@ function Platform(props) {
};
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({
title: '操作',
valueType: 'option',
width: 150,
render: (text, row, _, action) => [
detail(text, row, _, action),
edit(text, row, _, action),
remove(text, row, _, action),
defpath?.enabledetail && detail(text, row, _, action),
defpath?.enableedit && edit(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]);
return (
<div style={{ position: 'relative' }}>
<AutoTable
pagetitle="接单平台"
columns={columns}
path="/ngic-auth/sysUser/query/page"
path={pathconfig?.list || '/ngic-auth/sysUser/query/page'}
actionRef={actionRef}
pageextra={'add'}
pageextra={pathconfig?.enableadd ? 'add' : null}
resizeable={true}
addconfig={{
// access: 'sysDepartment_save',
......@@ -107,7 +129,7 @@ function Platform(props) {
onClick: () => {
setdrawer((s) => ({
...s,
visible: true,
open: true,
item: null,
title: '新增',
val: 'add',
......@@ -115,24 +137,38 @@ function Platform(props) {
},
},
}}
tabList={getcolumns()}
activeTabKey={activeTabKey}
onTabChange={(key) => {
setactiveTabKey(key);
}}
/>
<DrawerPro
fields={columns}
detailpath="/ngic-auth/sysUser/query/detail"
detailpath={pathconfig?.detail || null}
detailData={drawer?.item}
params={{ id: drawer?.item?.id }}
formRef={formRef}
placement="right"
onClose={() => {
setdrawer((s) => ({
...s,
visible: false,
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>
);
}
}
export default Platform;
\ No newline at end of file
export default Platform;
\ No newline at end of file
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