Commit 6b3a0258 authored by 前端-许佳敏's avatar 前端-许佳敏
parents f8d8c2ff ed7914cf
......@@ -22,7 +22,6 @@
# mockStatic
/.idea
src/services/index.ts
config/base.config.json
/src/services/index.ts
......
import React, { Component, useState, useEffect,useRef } from 'react';
import { Modal, Button, Form,Row,Col,Tooltip,Input,Select } from 'antd'
import {UpOutlined, DownOutlined} from '@ant-design/icons'
import {StandardTable} from 'god'
import { ColumnType,TableRowSelection} from 'antd/lib/table/interface'
import React, { Component, useState, useEffect, useRef } from 'react';
import { Modal, Button, Form, Row, Col, Tooltip, Input, Select, Space } from 'antd'
import { UpOutlined, DownOutlined } from '@ant-design/icons'
import { StandardTable } from 'god'
import { ColumnType, TableRowSelection } from 'antd/lib/table/interface'
import style from '../components/index.less'
import { PublicApi} from '@/services/api'
let {Option} = Select
import { PublicApi } from '@/services/api'
let { Option } = Select
export interface Params {
title: string;
type: number,
type: number,//1 选择订单 2发货单 3选择商品
columns: Array<any>;
dialogVisible: boolean;
onCancel: Function;
......@@ -17,10 +17,10 @@ export interface Params {
interface Item {
key: string;
}
interface filterItem{
interface filterItem {
name?: string;
brandName?:string;
customerCategory?:string,
brandName?: string;
customerCategory?: string,
status?: any
}
......@@ -30,75 +30,75 @@ const listDialog: React.FC<Params> = (props) => {
const [selectedRowKeys, setSelectedRowKeys] = useState<Array<string>>([])
let [isSearch, setIsSearch] = useState(false)
let [filterParams, setfilterParams] = useState<filterItem>({
name:'',
name: '',
})
const [searchForm, setSearchForm] = useState({
searName: '',
buyer:'',//收货商
buyer: '',//收货商
dateSelect: '',
outSideStatus: '',
TimeRange: ''
})
const TimeList = [
{
label:'单据时间(全部)',value: ''
label: '单据时间(全部)', value: ''
},
{
label:'今天',value:1
label: '今天', value: 1
},
{
label:'一周内',value:2
label: '一周内', value: 2
},
{
label:'一个月内',value:3
label: '一个月内', value: 3
},
{
label:'三个月内',value:4
label: '三个月内', value: 4
},
{
label:'六个月内',value:5
label: '六个月内', value: 5
},
{
label:'一年内',value: 6
label: '一年内', value: 6
},
{
label:'一年前',value: 7
label: '一年前', value: 7
}
]
const outSideStatusList = [
{
label:'外部状态(全部)',value: ''
label: '外部状态(全部)', value: ''
},
{
label:'待提交',value: 1
label: '待提交', value: 1
},
{
label:'待确认',value: 2
label: '待确认', value: 2
},
{
label:'接受物流单',value: 3
label: '接受物流单', value: 3
},
{
label:'不接受物流单',value: 4
label: '不接受物流单', value: 4
}
]
const handleCancel = () => {
}
const handletOk = (values:any) => {
const handletOk = (values: any) => {
console.log(values)
props.onCancel()
}
const data = [
{
id:'123',
key:'123',
name:'1231',
id: '123',
key: '123',
name: '1231',
}
]
const fetchData = (params:any) => {
if(props.type === 3){
return new Promise((resolve,reject) => {
PublicApi.getProductCommodityGetCommodityList({...params}).then(res => {
const fetchData = (params: any) => {
if (props.type === 3) {
return new Promise((resolve, reject) => {
PublicApi.getProductCommodityGetCommodityList({ ...params }).then(res => {
resolve(res.data)
})
})
......@@ -168,15 +168,16 @@ const listDialog: React.FC<Params> = (props) => {
props.type === 1 &&
<Select
style={{
marginRight:'16px'
marginRight: '16px'
}}
value={searchForm.buyer}
onChange={(val) => setSearchForm({ ...searchForm, buyer: val })}
>
<Option value=''>单据来源:订单</Option>
<Option value='1'>待审核</Option>
<Option value='2'>审核通过</Option>
<Option value='3'>审核不通过</Option>
<Option value='1'>订单</Option>
<Option value='2'>换货时申请单(退货发货)</Option>
<Option value='3'>换货申请单(换货发货)</Option>
<Option value='4'>退货申请单</Option>
</Select>
}
{
......@@ -184,19 +185,19 @@ const listDialog: React.FC<Params> = (props) => {
props.type === 3 &&
<Select
style={{
marginRight:'16px'
marginRight: '16px'
}}
value={searchForm.buyer}
onChange={(val) => setSearchForm({ ...searchForm, buyer: val })}
>
<Option value=''>来源:发货单</Option>
<Option value='1'>待审核</Option>
<Option value='2'>审核通过</Option>
<Option value='3'>审核不通过</Option>
<Option value='1'>发货单</Option>
<Option value='2'>订单/售后单</Option>
</Select>
}
<Tooltip trigger={['focus']} placement='top'
title={props.type === 1? '输入物流单号、订单号进行搜索':'输入物流单号、发货方进行搜索' }>
title={props.type === 2 ? '输入物流单号进行搜索' : '输入物流单号、发货方进行搜索'}>
<Input.Search
style={{ width: '232px' }}
value={searchForm.searName}
......@@ -205,18 +206,19 @@ const listDialog: React.FC<Params> = (props) => {
onSearch={() => handleSearch}
/>
</Tooltip>
<Button className={style['filter-btn']} onClick={() => setIsSearch(isSearch = !isSearch) }>
<Button className={style['filter-btn']} onClick={() => setIsSearch(isSearch = !isSearch)}>
高级筛选{isSearch ? <UpOutlined /> : <DownOutlined />}
</Button>
<Button className={style.selectBtn} onClick={() => handleReset()}>重置</Button>
</Col>
</Row>
<Row style={{margin: '16px 0'}}>
<Row style={{ margin: '16px 0' }}>
{
isSearch &&
<Col>
<Space size={16}>
{
props.type === 1?
props.type === 1 ?
<Select
className={style.select}
value={searchForm.buyer}
......@@ -254,17 +256,7 @@ const listDialog: React.FC<Params> = (props) => {
})
}
</Select>
<Select
className={style.select}
value={searchForm.outSideStatus}
onChange={(val) => setSearchForm({ ...searchForm, outSideStatus: val })}
>
{
outSideStatusList.map((item) => {
return <Option value={item.value}>{item.label}</Option>
})
}
</Select>
</Space>
</Col>
}
</Row>
......
.btn-wrap .ant-input-group .ant-input-group-addon {
.selectBtn {
padding: 0 !important;
}
.ant-form-item-control .ant-form-item-control-input .ant-form-item-control-input-content .ant-input-group-wrapper .ant-input-wrapper .ant-input-group-addon,
.ant-form-item-control .ant-form-item-control-input .ant-form-item-control-input-content .selectBtn .ant-input-wrapper .ant-input-group-addon,
.ant-form-item-control .ant-form-item-control-input .ant-form-item-control-input-content .ant-input-group-wrapper .ant-input-group .ant-input-group-addon,
.ant-form-item-control .ant-form-item-control-input .ant-form-item-control-input-content .selectBtn .ant-input-group .ant-input-group-addon {
padding: 0 !important;
}
.btn-wrap{
.ant-input-group{
.selectBtn{
padding: 0 !important;
}
.ant-form-item-control{
.ant-form-item-control-input{
.ant-form-item-control-input-content{
.ant-input-group-wrapper, .selectBtn{
.ant-input-wrapper ,.ant-input-group{
.ant-input-group-addon{
padding: 0 !important;
}
}
}
}
}
}
\ No newline at end of file
......@@ -69,7 +69,7 @@ const { Option } = Select;
const defaultValue = 'lucy'
const company: React.FC<{}> = () => {
//hook只能写在函数组件的顶级作用域
const ref = useRef({})
const ref = useRef<any>({})
const [menuForm] = Form.useForm();
const [headerTitle, setHeaderTitle] = useState('新建物流公司')
const [Code, setCode] = useState('')
......@@ -224,7 +224,7 @@ const company: React.FC<{}> = () => {
}
]}
>
<Input className={style['btn-wrap']} disabled maxLength={20} addonAfter={selectBtn}/>
<Input className={style['selectBtn']} disabled maxLength={20} addonAfter={selectBtn}/>
</Form.Item>
:
<Form.Item
......
/*
* @Date: 2020-07-13 15:01:40
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-30 10:06:44
* @LastEditTime: 2020-08-03 16:52:53
*/
import React, { ReactNode, useRef } from 'react'
......@@ -50,7 +50,7 @@ const fetchData = (params?: any) => {
}
const Company: React.FC<{}> = () => {
const ref = useRef({})
const ref = useRef<any>({})
const columns: ColumnType<any>[] = [
{
......
......@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-15 10:31:55
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-28 10:56:07
* @LastEditTime: 2020-08-03 17:59:56
*/
import React, { Component, useState, useEffect } from 'react';
import ReactDOM from 'react-dom'
......@@ -175,7 +175,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
setOptions(TelCodeList)
})
const getAllCode = setTimeout(()=> {
PublicApi.getWarehouseAreaByPcodeAll({ pcode: '100000' }).then(res => {
PublicApi.getManageAreaByPcodeAll({ pcode: '100000' }).then(res => {
let list = []
res.data.forEach((item: any, index: number) => {
list.push({ label: item.name, value: `${item.code}-${item.name}` })
......@@ -259,7 +259,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
state.value = ''
let list = []
let pcode = value && value.split('-').length > 1 ? value.split('-')[0] : value
PublicApi.getWarehouseAreaByPcodeAll({ pcode: pcode }).then(res => {
PublicApi.getManageAreaByPcodeAll({ pcode: pcode }).then(res => {
res.data.forEach((item: any, index: number) => {
// list.push({ label: item.name, value: item.code })
list.push({ label: item.name, value: `${item.code}-${item.name}` })
......@@ -277,7 +277,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
state.value = ''
let list = []
let pcode = value && value.split('-').length > 1 ? value.split('-')[0] : value
PublicApi.getWarehouseAreaByPcodeAll({ pcode: pcode }).then(res => {
PublicApi.getManageAreaByPcodeAll({ pcode: pcode }).then(res => {
res.data.forEach((item: any, index: number) => {
// list.push({ label: item.name, value: item.code })
list.push({ label: item.name, value: `${item.code}-${item.name}` })
......
......@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-15 10:31:55
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-30 19:37:57
* @LastEditTime: 2020-08-03 18:02:39
*/
import React, { Component, useState, useEffect } from 'react';
import ReactDOM from 'react-dom'
......@@ -105,7 +105,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
}
// console.log(id,typeof id,history.location.query.isSee,typeof history.location.query.isSee)
setHeaderTitle(`${_title}运费模板`)
PublicApi.getWarehouseAreaByPcodeAll({ pcode: '100000' }).then(res => {
PublicApi.getManageAreaByPcodeAll({ pcode: '100000' }).then(res => {
let list = []
res.data.forEach((item: any, index: number) => {
list.push({ label: item.name, value: Number(item.code) })
......@@ -152,10 +152,7 @@ const diaLogForm: React.FC<ListProps> = (props) => {
history.goBack()
},1000)
}
const addStyle = {
padding: '2px 0',
textAlign: 'center'
}
const onSearch = () => {
}
......@@ -335,7 +332,8 @@ const diaLogForm: React.FC<ListProps> = (props) => {
operations: {
title: '操作'
},
renderAddition: () => <div style={addStyle}>+添加指定地区</div>,
renderAddition: () =>
<div style={{padding: '2px 0',textAlign: 'center'}}>+添加指定地区</div>,
renderMoveDown: () => null,
renderMoveUp: () => null,
renderRemove: (idx: any) => {
......
......@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-14 15:07:34
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-24 20:08:29
* @LastEditTime: 2020-08-03 11:19:53
*/
import React, { Component, ReactNode, useRef, useState } from 'react'
import { history } from 'umi'
......@@ -111,7 +111,7 @@ const EditableCell: React.FC<EditableCellProps> = ({
*/
const Template: React.FC<ListProps> = (props) => {
console.log(props)
const ref = useRef({})
const ref = useRef<any>({})
const [form] = Form.useForm();
const [table, setTable] = useState([])
const [editingKey, setEditingKey] = useState('');
......
......@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-14 15:07:34
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-31 19:27:46
* @LastEditTime: 2020-08-03 15:48:15
*/
import React, { Component, ReactNode, useRef, useState, useEffect } from 'react'
import { history } from 'umi'
......@@ -28,6 +28,7 @@ import { PublicApi } from '@/services/api'
import { timeRange} from '@/utils/index'
import moment from 'moment'
import statuStyle from '../colorTag'
import {TimeList,outSideStatusList,statusList} from '../statusList'
import style from '../components/index.less'
const { Option } = Select
const data = [
......@@ -143,49 +144,7 @@ const OrderList: React.FC<ListProps> = (props) => {
invoicesTimeStart: '',
invoicesTimeEnd: ''
})
const TimeList = [
{
label: '单据时间(全部)', value: 0
},
{
label: '今天', value: 1
},
{
label: '一周内', value: 2
},
{
label: '一个月内', value: 3
},
{
label: '三个月内', value: 4
},
{
label: '六个月内', value: 5
},
{
label: '一年内', value: 6
},
{
label: '一年前', value: 7
}
]
const outSideStatusList = [
{
label: '外部状态(全部)', value: ''
},
{
label: '待提交', value: 1
},
{
label: '待确认', value: 2
},
{
label: '接受物流单', value: 3
},
{
label: '不接受物流单', value: 4
}
]
const columns: ColumnType<any>[] = [
{
title: '物流单号',
......@@ -240,9 +199,12 @@ const OrderList: React.FC<ListProps> = (props) => {
},
{
title: '外部状态',
align: 'center',
align: 'left',
dataIndex: 'status',
key: 'status',
filters: statusList,
filterMultiple: false,
onFilter:(value,record) => record.status === value,
render: (text: any, record: any) => {
let component: ReactNode = null
if (text == 3) {
......@@ -398,17 +360,6 @@ const OrderList: React.FC<ListProps> = (props) => {
})
}
</Select>
<Select
className={style.select}
value={searchForm.status}
onChange={(val) => setSearchForm({ ...searchForm, status: val })}
>
{
outSideStatusList.map((item,index) => {
return <Option key={index} value={item.value}>{item.label}</Option>
})
}
</Select>
</Space>
</Col>
}
......
......@@ -2,9 +2,9 @@
* @Author: LeeJiancong
* @Date: 2020-07-28 11:25:30
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-30 17:37:44
* @LastEditTime: 2020-08-03 16:48:12
*/
import React, { Component, useEffect, useRef, useState } from 'react'
import React, { Component, useEffect, useRef, useState,ReactNode } from 'react'
import { Card, Row, Col, Tabs, Button, Input as SelectInput, Badge } from 'antd'
import { LinkOutlined } from '@ant-design/icons'
import { StandardTable } from 'god'
......@@ -82,17 +82,17 @@ const Deatail: React.FC<{}> = () => {
},
{
title: '状态',
align: 'center',
align: 'left',
dataIndex: 'name',
key: 'name',
render: (_: any, record) => {
return (
<>
<Badge color="#6C9CEB" text='待确认' />
<Badge status='error' text='不接受物流单' />
</>
)
}
render: (text: number, record: any) => {
let component: ReactNode = null;
text === 1 ? component = <Badge status='default' text="待提交" />:
text === 2 ? component = <Badge status='processing' text="待确认" />:
text === 3 ? component = <Badge status='success' text="接受物流单" />:
component = <Badge status='error' text="不接受物流单" />
return component;
},
},
{
title: '操作',
......
......@@ -2,7 +2,7 @@
* @Author: LeeJiancong
* @Date: 2020-07-14 15:07:34
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-07-31 19:35:54
* @LastEditTime: 2020-08-03 15:49:51
*/
import React, { Component, ReactNode, useRef, useState, useEffect } from 'react'
import { history } from 'umi'
......@@ -26,6 +26,7 @@ import { IFormFilter, IButtonFilter } from 'god/dist/src/standard-table/TableCon
import { PublicApi } from '@/services/api'
import style from '../components/index.less'
import statuStyle from '../colorTag'
import {TimeList,outSideStatusList,statusList} from '../statusList'
import moment from 'moment'
import { timeRange } from '@/utils/index'
import Index from '@/pages';
......@@ -57,49 +58,7 @@ const data = [
interface Item {
key: string
}
const TimeList = [
{
label: '单据时间(全部)', value: 0
},
{
label: '今天', value: 1
},
{
label: '一周内', value: 2
},
{
label: '一个月内', value: 3
},
{
label: '三个月内', value: 4
},
{
label: '六个月内', value: 5
},
{
label: '一年内', value: 6
},
{
label: '一年前', value: 7
}
]
const outSideStatusList = [
{
label: '外部状态(全部)', value: ''
},
{
label: '待提交', value: 1
},
{
label: '待确认', value: 2
},
{
label: '接受物流单', value: 3
},
{
label: '不接受物流单', value: 4
}
]
//父页面传递来的参数
export interface ListProps {
}
......@@ -200,9 +159,12 @@ const OrderList: React.FC<ListProps> = (props) => {
},
{
title: '外部状态',
align: 'center',
align: 'left',
dataIndex: 'status',
key: 'status',
filters: statusList,
filterMultiple: false,
onFilter:(value,record) => record.status === value,
render: (text: any, reconds: any) => {
let component: ReactNode = null
if (text == 3) {
......@@ -239,7 +201,9 @@ const OrderList: React.FC<ListProps> = (props) => {
删除
</Button>
</Popconfirm>
<Popconfirm title="确定要提交吗?" okText="是" cancelText="否" onConfirm={() => handleSubmit(record.id)}>
<Button type='link'>提交</Button>
</Popconfirm>
</>
}
......@@ -286,11 +250,17 @@ const OrderList: React.FC<ListProps> = (props) => {
})
}
const handleDelete = (id: number | string) => {
const handleDelete = (id: number) => {
PublicApi.postLogisticsOrderWaitSubmitDelete({ id: id }).then(res => {
ref.current.reload()
})
}
const handleSubmit = (id:number) => {
PublicApi.postLogisticsOrderWaitSubmitSubmit({id:id}).then(res => {
ref.current.reload()
})
}
const handleSee = (id: number) => {
history.push(`/memberCenter/logisticsAbility/logisticsSubmit/orderSubmitDeatil?id=${id}`)
}
......
/*
* @Author: LeeJiancong
* @Date: 2020-08-01 11:06:09
* @LastEditors: LeeJiancong
* @LastEditTime: 2020-08-01 11:07:49
*/
export const TimeList = [
{
label: '单据时间(全部)', value: 0
},
{
label: '今天', value: 1
},
{
label: '一周内', value: 2
},
{
label: '一个月内', value: 3
},
{
label: '三个月内', value: 4
},
{
label: '六个月内', value: 5
},
{
label: '一年内', value: 6
},
{
label: '一年前', value: 7
}
]
export const outSideStatusList = [
{
label: '外部状态(全部)', value: ''
},
{
label: '待提交', value: 1
},
{
label: '待确认', value: 2
},
{
label: '接受物流单', value: 3
},
{
label: '不接受物流单', value: 4
}
]
export const statusList = [
{
text: '待提交', value: 1
},
{
text: '待确认', value: 2
},
{
text: '接受物流单', value: 3
},
{
text: '不接受物流单', value: 4
}
]
\ No newline at end of file
import React, { useState, useEffect, useRef } from 'react';
import { history } from 'umi';
import {
Tooltip,
Input,
Select,
Button,
Card,
Dropdown,
Menu,
Row,
Col,
Popconfirm,
} from 'antd';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import { Tooltip, Input, Button, Card, Row, Col, Popconfirm } from 'antd';
import {
PlusOutlined,
EyeOutlined,
UpOutlined,
DeleteOutlined,
DownOutlined,
PlayCircleOutlined,
PauseCircleOutlined,
} from '@ant-design/icons';
import { StandardTable } from 'god';
import { ColumnType } from 'antd/lib/table/interface';
import style from './index.less';
const BillsType: React.FC<{}> = () => {
return <div>BillsType</div>;
const data = [
{
key: '1',
id: '1',
no: 'DJ001',
name: '进货入库单',
direction: 1,
status: 1,
},
{
key: '2',
id: '2',
no: 'DJ002',
name: '退货入库单',
direction: 2,
status: 2,
},
];
const billsType: React.FC<{}> = () => {
const ref = useRef({});
const [searchName, setSearchName] = useState('');
const columns: ColumnType<any>[] = [
{
title: 'ID',
dataIndex: 'id',
align: 'center',
key: 'id',
},
{
title: '单据类型编号',
dataIndex: 'no',
align: 'center',
key: 'no',
},
{
title: '单据名称',
dataIndex: 'name',
align: 'center',
key: 'name',
render: (text: any, record: any) => {
return (
<span className="commonPickColor" onClick={() => history.push('')}>
{text}&nbsp;
<EyeOutlined />
</span>
);
},
},
{
title: '方向',
dataIndex: 'direction',
align: 'center',
key: 'direction',
render: (text: any, record: any) => {
return (
<span>
{text}
{record.direction === 1 ? ' +' : ' -'}
</span>
);
},
},
{
title: '状态',
dataIndex: 'status',
align: 'center',
key: 'status',
sorter: true,
render: (text: any, record: any) => {
return (
<Popconfirm
title="确定要执行这个操作?"
onConfirm={() => console.log('...')}
onCancel={() => console.log('...')}
okText="是"
cancelText="否"
>
<Button
type="link"
onClick={() => console.log('???')}
style={
record.status === 1 ? { color: '#00B37A' } : { color: 'red' }
}
>
{record.status === 1 ? (
<>
有效 <PlayCircleOutlined />
</>
) : (
<>
无效 <PauseCircleOutlined />
</>
)}
</Button>
</Popconfirm>
);
},
},
{
title: '操作',
dataIndex: 'option',
align: 'center',
render: (record: any) => (
<>
<Button type="link" onClick={record => history.push('')}>
编辑
</Button>
<Popconfirm
title="确定要执行这个操作?"
onConfirm={() => console.log('...')}
onCancel={() => console.log('...')}
okText="是"
cancelText="否"
>
<Button type="link">删除</Button>
</Popconfirm>
</>
),
},
];
// 模拟请求
const fetchData = (params: any) => {
return new Promise((resolve, reject) => {
const queryResult = data.find(v => v.key === params.keywords);
setTimeout(() => {
resolve({
code: 200,
message: '',
data: queryResult ? [queryResult] : data,
});
}, 1000);
});
};
const handleReset = () => {};
return (
<PageHeaderWrapper>
<Card>
<StandardTable
tableProps={{ rowKey: 'id' }}
columns={columns}
currentRef={ref}
fetchTableData={(params: any) => fetchData(params)}
controlRender={
<Row>
<Col span={12}>
<Button
type="primary"
onClick={() =>
history.push(
'/memberCenter/memberAbility/manage/addMember?type=add',
)
}
>
<PlusOutlined />
新建
</Button>
</Col>
<Col span={12} style={{ textAlign: 'right' }}>
<Tooltip
trigger={['focus']}
placement="top"
title={<span>输入单据名称进行搜索</span>}
>
<Input.Search
style={{ width: '232px' }}
value={searchName}
placeholder="搜索"
onChange={e => setSearchName(e.target.value)}
/>
</Tooltip>
<Button
style={{ marginLeft: '16px' }}
onClick={() => handleReset()}
>
重置
</Button>
</Col>
</Row>
}
/>
</Card>
</PageHeaderWrapper>
);
};
export default BillsType;
export default billsType;
import React, { useState, useEffect, useRef } from 'react';
import { history } from 'umi';
import {
Tooltip,
Input,
Select,
Button,
Card,
Dropdown,
Menu,
Row,
Col,
Popconfirm,
} from 'antd';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import { Tooltip, Input, Button, Card, Row, Col, Popconfirm } from 'antd';
import {
PlusOutlined,
EyeOutlined,
UpOutlined,
DeleteOutlined,
DownOutlined,
PlayCircleOutlined,
PauseCircleOutlined,
} from '@ant-design/icons';
import { StandardTable } from 'god';
import { ColumnType } from 'antd/lib/table/interface';
import style from './index.less';
const data = [
{
key: '1',
id: '1',
name: '广州成品仓',
address: '广东省广州市海珠区新港东路1068号中洲中心北塔6楼',
person: '蒯美政',
phoneMobile: '185 2929 5432',
status: 1,
},
{
key: '2',
id: '2',
name: '广州成品仓',
address: '广东省广州市海珠区新港东路1068号中洲中心北塔6楼',
person: '蒯美政',
phoneMobile: '185 2929 5432',
status: 2,
},
];
const WareHouse: React.FC<{}> = () => {
return <div>warehouse</div>;
const ref = useRef({});
const [searchName, setSearchName] = useState('');
const columns: ColumnType<any>[] = [
{
title: 'ID',
dataIndex: 'id',
align: 'center',
key: 'id',
},
{
title: '仓库名称',
dataIndex: 'name',
align: 'center',
key: 'name',
render: (text: any, record: any) => {
return (
<span className="commonPickColor" onClick={() => history.push('')}>
{text}&nbsp;
<EyeOutlined />
</span>
);
},
},
{
title: '仓库地址',
dataIndex: 'address',
align: 'center',
key: 'address',
},
{
title: '仓库负责人',
dataIndex: 'person',
align: 'center',
key: 'person',
},
{
title: '联系电话',
dataIndex: 'phoneMobile',
align: 'center',
key: 'phoneMobile',
},
{
title: '状态',
dataIndex: 'status',
align: 'center',
key: 'status',
sorter: true,
render: (text: any, record: any) => {
return (
<Popconfirm
title="确定要执行这个操作?"
onConfirm={() => console.log('...')}
onCancel={() => console.log('...')}
okText="是"
cancelText="否"
>
<Button
type="link"
onClick={() => console.log('???')}
style={
record.status === 1 ? { color: '#00B37A' } : { color: 'red' }
}
>
{record.status === 1 ? (
<>
有效 <PlayCircleOutlined />
</>
) : (
<>
无效 <PauseCircleOutlined />
</>
)}
</Button>
</Popconfirm>
);
},
},
{
title: '操作',
dataIndex: 'option',
align: 'center',
render: (record: any) => (
<>
<Button type="link" onClick={record => history.push('')}>
编辑
</Button>
<Popconfirm
title="确定要执行这个操作?"
onConfirm={() => console.log('...')}
onCancel={() => console.log('...')}
okText="是"
cancelText="否"
>
<Button type="link">删除</Button>
</Popconfirm>
</>
),
},
];
// 模拟请求
const fetchData = (params: any) => {
return new Promise((resolve, reject) => {
const queryResult = data.find(v => v.key === params.keywords);
setTimeout(() => {
resolve({
code: 200,
message: '',
data: queryResult ? [queryResult] : data,
});
}, 1000);
});
};
const handleReset = () => {};
return (
<PageHeaderWrapper>
<Card>
<StandardTable
tableProps={{ rowKey: 'id' }}
columns={columns}
currentRef={ref}
fetchTableData={(params: any) => fetchData(params)}
controlRender={
<Row>
<Col span={12}>
<Button
type="primary"
onClick={() =>
history.push(
'/memberCenter/memberAbility/manage/addMember?type=add',
)
}
>
<PlusOutlined />
新建
</Button>
</Col>
<Col span={12} style={{ textAlign: 'right' }}>
<Tooltip
trigger={['focus']}
placement="top"
title={<span>输入仓库名称进行搜索</span>}
>
<Input.Search
style={{ width: '232px' }}
value={searchName}
placeholder="搜索"
onChange={e => setSearchName(e.target.value)}
/>
</Tooltip>
<Button
style={{ marginLeft: '16px' }}
onClick={() => handleReset()}
>
重置
</Button>
</Col>
</Row>
}
/>
</Card>
</PageHeaderWrapper>
);
};
export default WareHouse;
This source diff could not be displayed because it is too large. You can view the blob instead.
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