diff --git a/admin-web/config/router.config.js b/admin-web/config/router.config.js index 99875d14e..5fc60174d 100644 --- a/admin-web/config/router.config.js +++ b/admin-web/config/router.config.js @@ -69,6 +69,16 @@ export default [ name: 'product-spu-list', component: './Product/ProductSpuList', }, + { + path: '/product/product-spu-add', + name: 'product-spu-add', + component: './Product/ProductSpuAddOrUpdate', + }, + { + path: '/product/product-category-list', + name: 'product-category-list', + component: './Product/ProductCategoryList', + }, { path: '/product/product-category-list', name: 'product-category-list', diff --git a/admin-web/src/pages/Home/Home.js b/admin-web/src/pages/Home/Home.js index ac3848812..42651f51b 100644 --- a/admin-web/src/pages/Home/Home.js +++ b/admin-web/src/pages/Home/Home.js @@ -10,9 +10,9 @@ export default class Home extends Component { render() { return (
- - - + {/**/} + {/**/} + {/**/}

home...

diff --git a/admin-web/src/pages/Product/ProductSpuAddOrUpdate.js b/admin-web/src/pages/Product/ProductSpuAddOrUpdate.js new file mode 100644 index 000000000..4a3f26a02 --- /dev/null +++ b/admin-web/src/pages/Product/ProductSpuAddOrUpdate.js @@ -0,0 +1,143 @@ +/* eslint-disable */ + +import React, { PureComponent, Fragment } from 'react'; +import { connect } from 'dva'; +import moment from 'moment'; +import {Card, Form, Input, Radio, Button, Table, Divider} from 'antd'; +import PageHeaderWrapper from '@/components/PageHeaderWrapper'; + +import styles from './ProductSpuAddOrUpdate.less'; + +const FormItem = Form.Item; +const RadioGroup = Radio.Group; + +// roleList +@connect(({ productSpuList, loading }) => ({ + productSpuList, + list: productSpuList.list.spus, + loading: loading.models.productSpuList, +})) + +@Form.create() +class ProductSpuAddOrUpdate extends PureComponent { + state = { + modalVisible: false, + modalType: 'add', //add update + initValues: {}, + roleAssignVisible: false, + roleAssignRecord: {}, + }; + + componentDidMount() { + const { dispatch } = this.props; + dispatch({ + type: 'productSpuList/page', + payload: { + name: '', + pageNo: 0, + pageSize: 10, + }, + }); + } + + handleSubmit = e => { + const { dispatch, form } = this.props; + e.preventDefault(); + form.validateFieldsAndScroll((err, values) => { + if (!err) { + dispatch({ + type: 'form/submitRegularForm', + payload: values, + }); + } + }); + } + + render() { + // debugger; + const { form, data } = this.props; + + // 规格明细 + const columns = [ + { + title: '颜色', + dataIndex: 'price' + }, + { + title: '价格', + dataIndex: 'price', + render(val) { + return {status[val]}; + }, + }, + { + title: '库存', + dataIndex: 'quantity', + } + ]; + + return ( + + +
+ + {form.getFieldDecorator('name', { + rules: [{ required: true, message: '请输入商品名!', min: 2 }], + initialValue: '', // TODO 修改 + })()} + + + {form.getFieldDecorator('sellPoint', { + rules: [{ required: true, message: '请输入商品卖点!' }], + initialValue: '', // TODO 修改 + })()} + + + {form.getFieldDecorator('description', { + rules: [{ required: true, message: '请输入商品描述!' }], + initialValue: '', // TODO 修改 + })()} + + + {form.getFieldDecorator('cid', { + rules: [{ required: true, message: '请输入分类编号!' }], + initialValue: '', // TODO 修改 // TODO 芋艿,和面做成下拉框 + })()} + + + {form.getFieldDecorator('picUrls', { + initialValue: '', // TODO 修改 // TODO 芋艿,做成上传组件 + })()} + + + {form.getFieldDecorator('visible', { + initialValue: 1, // TODO 修改 + })( + + + + + )} + + + {form.getFieldDecorator('visible', { + initialValue: 1, // TODO 修改 + })( + + )} + + + {form.getFieldDecorator('visible', { + initialValue: 1, // TODO 修改 + })( + + )} + + + + + ); + } +} + +export default ProductSpuAddOrUpdate; diff --git a/admin-web/src/pages/Product/ProductSpuAddOrUpdate.less b/admin-web/src/pages/Product/ProductSpuAddOrUpdate.less new file mode 100644 index 000000000..ebb45c292 --- /dev/null +++ b/admin-web/src/pages/Product/ProductSpuAddOrUpdate.less @@ -0,0 +1,15 @@ +@import '~antd/lib/style/themes/default.less'; +@import '~@/utils/utils.less'; + +.tableList { + .tableListOperator { + margin-bottom: 16px; + button { + margin-right: 8px; + } + } +} + +.tableDelete { + color: red; +}