diff --git a/src/components/UseCouponAddEdit/index.jsx b/src/components/UseCouponAddEdit/index.jsx
new file mode 100644
index 00000000..3059ea56
--- /dev/null
+++ b/src/components/UseCouponAddEdit/index.jsx
@@ -0,0 +1,82 @@
+import React, { forwardRef, useImperativeHandle, useRef } from "react";
+import { useSetState } from "ahooks";
+import { Card, DateRangePicker } from "zent";
+import moment from "moment";
+
+import Ipt from "@/components/input/main";
+import Form from "@/components/form/main";
+import FormItem from "@/components/form-item/main";
+
+const rules = {
+ name: [{ type: "required", message: "请输入批次名称" }],
+};
+
+const UseCouponAddEdit = forwardRef((props, ref) => {
+ const [state, setState] = useSetState({
+ title: "基本信息",
+ disabled: false,
+ });
+ const [model, setModel] = useSetState({
+ name: "",
+ time: "",
+ });
+
+ useImperativeHandle(ref, () => ({
+ submit: submit,
+ }));
+
+ const form_el = useRef(null);
+
+ const submit = () => {};
+ const onChangeCombinedDate = () => {};
+ const onDisabledRange = () => {};
+
+ return (
+
+
+
+
+
+ );
+});
+
+export default UseCouponAddEdit;
diff --git a/src/components/UseCouponAddEdit/style.less b/src/components/UseCouponAddEdit/style.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/pages/coupon/addEdit/index.jsx b/src/pages/coupon/addEdit/index.jsx
new file mode 100644
index 00000000..e3610a89
--- /dev/null
+++ b/src/pages/coupon/addEdit/index.jsx
@@ -0,0 +1,14 @@
+import React from "react";
+import "./style.less";
+
+import UseCouponAddEdit from "@/components/UseCouponAddEdit";
+
+const CouponAddEdit = () => {
+ return (
+
+
+
+ );
+};
+
+export default CouponAddEdit;
diff --git a/src/pages/coupon/addEdit/style.less b/src/pages/coupon/addEdit/style.less
new file mode 100644
index 00000000..e69de29b
diff --git a/src/pages/coupon/list/index.jsx b/src/pages/coupon/list/index.jsx
index 6b48414a..e3db2844 100644
--- a/src/pages/coupon/list/index.jsx
+++ b/src/pages/coupon/list/index.jsx
@@ -1,5 +1,7 @@
import React, { useRef, useEffect } from "react";
+import { useHistory } from "react-router-dom";
import { useSetState } from "ahooks";
+
import { Button, CombinedDateRangePicker } from "zent";
import _ from "lodash";
import TabPage from "@/components/tabPage/main.js";
@@ -9,14 +11,98 @@ import "./style.less";
const tableColumn = [
{
- title: "table 示例 1",
+ title: "优惠券-批次ID",
name: "key_code",
prop: "key_code",
type: "normal",
width: "auto",
},
{
- title: "table 示例 2",
+ title: "优惠券批次名称",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "有效期",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "归属营销计划名称",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "归属key批次名称",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "卷总数(已发放)",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "已领取",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "已使用",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "剩余数",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "已失效",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "已作废",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "状态",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "启用/暂停",
+ width: "auto",
+ type: "normal",
+ prop: "title",
+ name: "title",
+ },
+ {
+ title: "操作",
width: "auto",
type: "normal",
prop: "title",
@@ -51,6 +137,7 @@ const UseCouponList = () => {
isQuery: false,
});
const table_el = useRef(null);
+ const history = useHistory();
/**
*
@@ -85,7 +172,26 @@ const UseCouponList = () => {
getTable();
}, [state.isQuery]);
- const addCouponBtn = () => {};
+ const addCouponBtn = () => {
+ let activerou = [
+ {
+ pagetitle: "新建优惠券",
+ items: [
+ {
+ path: "/home/coupon-list",
+ name: "优惠券管理",
+ },
+ {
+ path: "/home/coupon-add-edit",
+ name: "新建优惠券",
+ },
+ ],
+ },
+ ];
+
+ sessionStorage.setItem("breaknav", JSON.stringify(activerou));
+ history.push("/home/coupon-add-edit");
+ };
const selectionFun = () => {};
const searchCallback = () => {
getTable();
@@ -149,7 +255,7 @@ const UseCouponList = () => {
value={state.key_word}
wordSearch={() => searchCallback()}
icon="search"
- placeholder={"请输入xxxxx"}
+ placeholder={"请输入批次号、名称、key批次名称、计划名称 进行搜索"}
countShow={false}
height={"36px"}
width={"260px"}
diff --git a/src/router/index.js b/src/router/index.js
index 2db1d989..5356f83e 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -1,261 +1,267 @@
-import Extension from '@/pages/extension/main/main'
-import Overview from '@/pages/overview/main/main'
-import Distributor from '@/pages/distributor/main/main'
-import ExchangeCodeList from '@/pages/exchangecode/list/list'
-import ExchangeCodeAdd from '@/pages/exchangecode/add/add'
-import ExchangeCodeEdit from '@/pages/exchangecode/edit/edit'
-import ExchangeCommodity from '@/pages/exchangecode/commodity/commodity'
-import ProductEdit from '@/pages/exchangecode/commodity/goodedit.js'
-import ExchangePage from '@/pages/exchangepage/main/main'
-import OrderList from '@/pages/order/list/list'
-import OrderDetails from '@/pages/order/more/more'
-import OrderAdd from '@/pages/order/add/add'
-import Plan from '@/pages/plan/main/main'
-import PlanList from '@/pages/plan/list/list'
-import PlanAdd from '@/pages/plan/add/add'
-import PlanEdit from '@/pages/plan/add/edit'
-import PlanEditCopy from '@/pages/plan/add/plan-copy'
-import KeyList from '@/pages/plan/key/list'
-import KeysList from '@/pages/plan/keyList'
-import KeyOrderList from '@/pages/plan/keyorder/keyorder'
-import KeyEdit from '@/pages/plan/key/edit.js'
-import KeyDetail from '@/pages/plan/key/detail/list.js'
-import KeyLog from '@/pages/plan/key/detail/log.js'
-import AccountList from '@/pages/system/account/list/list'
-import AccountAdd from '@/pages/system/account/add/add'
-import SubAccountList from '@/pages/system/subAccount/list/list'
-import SubAccountAdd from '@/pages/system/subAccount/add/add'
-import RoleList from '@/pages/system/role/list/list'
-import RoleAdd from '@/pages/system/role/add/add'
-import Station from '@/pages/system/station/main'
-import Customize from '@/pages/system/customize/main.js'
-import MyMould from '@/pages/system/systemMould/main.js'
-import Menu from '@/pages/system/menu/main/main'
-import DistriButorList from '@/pages/distributor/list/list'
-import DistriButorAdd from '@/pages/distributor/add/add'
-import DistriButorEdit from '@/pages/distributor/add/add'
-import MyTempMouldAdd from '@/pages/exchangepage/template/main.js'
-import MyExChangeTemplate from '@/pages/exchangepage/mytemplate/main.js'
-import CopyCode from '@/pages/exchangecode/copyCode/index'
-import ExchangeCodeAdds from '@/pages/exchangecode/exchangecodeAdd'
-import CouponList from '@/pages/coupon/list'
+import Extension from "@/pages/extension/main/main";
+import Overview from "@/pages/overview/main/main";
+import Distributor from "@/pages/distributor/main/main";
+import ExchangeCodeList from "@/pages/exchangecode/list/list";
+import ExchangeCodeAdd from "@/pages/exchangecode/add/add";
+import ExchangeCodeEdit from "@/pages/exchangecode/edit/edit";
+import ExchangeCommodity from "@/pages/exchangecode/commodity/commodity";
+import ProductEdit from "@/pages/exchangecode/commodity/goodedit.js";
+import ExchangePage from "@/pages/exchangepage/main/main";
+import OrderList from "@/pages/order/list/list";
+import OrderDetails from "@/pages/order/more/more";
+import OrderAdd from "@/pages/order/add/add";
+import Plan from "@/pages/plan/main/main";
+import PlanList from "@/pages/plan/list/list";
+import PlanAdd from "@/pages/plan/add/add";
+import PlanEdit from "@/pages/plan/add/edit";
+import PlanEditCopy from "@/pages/plan/add/plan-copy";
+import KeyList from "@/pages/plan/key/list";
+import KeysList from "@/pages/plan/keyList";
+import KeyOrderList from "@/pages/plan/keyorder/keyorder";
+import KeyEdit from "@/pages/plan/key/edit.js";
+import KeyDetail from "@/pages/plan/key/detail/list.js";
+import KeyLog from "@/pages/plan/key/detail/log.js";
+import AccountList from "@/pages/system/account/list/list";
+import AccountAdd from "@/pages/system/account/add/add";
+import SubAccountList from "@/pages/system/subAccount/list/list";
+import SubAccountAdd from "@/pages/system/subAccount/add/add";
+import RoleList from "@/pages/system/role/list/list";
+import RoleAdd from "@/pages/system/role/add/add";
+import Station from "@/pages/system/station/main";
+import Customize from "@/pages/system/customize/main.js";
+import MyMould from "@/pages/system/systemMould/main.js";
+import Menu from "@/pages/system/menu/main/main";
+import DistriButorList from "@/pages/distributor/list/list";
+import DistriButorAdd from "@/pages/distributor/add/add";
+import DistriButorEdit from "@/pages/distributor/add/add";
+import MyTempMouldAdd from "@/pages/exchangepage/template/main.js";
+import MyExChangeTemplate from "@/pages/exchangepage/mytemplate/main.js";
+import CopyCode from "@/pages/exchangecode/copyCode/index";
+import ExchangeCodeAdds from "@/pages/exchangecode/exchangecodeAdd";
+import CouponList from "@/pages/coupon/list";
+import CouponAddEdit from "@/pages/coupon/addEdit";
/* 基础路由 */
const router = [
{
- path: '/home/extension',
+ path: "/home/extension",
component: Extension,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/overview',
+ path: "/home/overview",
component: Overview,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/distributor',
+ path: "/home/distributor",
component: Distributor,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangepage',
+ path: "/home/exchangepage",
component: ExchangePage,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/mytempMould',
+ path: "/home/mytempMould",
component: MyTempMouldAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/myexchangetemplate',
+ path: "/home/myexchangetemplate",
component: MyExChangeTemplate,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/order-list',
+ path: "/home/order-list",
component: OrderList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/order-addetails',
+ path: "/home/order-addetails",
component: OrderDetails,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/order-add',
+ path: "/home/order-add",
component: OrderAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan',
+ path: "/home/plan",
component: Plan,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan-list',
+ path: "/home/plan-list",
component: PlanList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan-create',
+ path: "/home/plan-create",
component: PlanAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan-edit',
+ path: "/home/plan-edit",
component: PlanEdit,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan-edit-copy',
+ path: "/home/plan-edit-copy",
component: PlanEditCopy,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/key-list',
+ path: "/home/key-list",
component: KeyList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/plan-keyList',
+ path: "/home/plan-keyList",
component: KeysList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/key-edit',
+ path: "/home/key-edit",
component: KeyEdit,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/key-detail',
+ path: "/home/key-detail",
component: KeyDetail,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/key-log',
+ path: "/home/key-log",
component: KeyLog,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/addkeyorder',
+ path: "/home/addkeyorder",
component: KeyOrderList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/account-add',
+ path: "/home/system/account-add",
component: AccountAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/subaccount-list',
+ path: "/home/system/subaccount-list",
component: SubAccountList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/subaccount-add',
+ path: "/home/system/subaccount-add",
component: SubAccountAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/role-list',
+ path: "/home/system/role-list",
component: RoleList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/role-add',
+ path: "/home/system/role-add",
component: RoleAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/station',
+ path: "/home/system/station",
component: Station,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/customize',
+ path: "/home/system/customize",
component: Customize,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/menu',
+ path: "/home/system/menu",
component: Menu,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/my-mould',
+ path: "/home/system/my-mould",
component: MyMould,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/distributor-list',
+ path: "/home/distributor-list",
component: DistriButorList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/distributor-add',
+ path: "/home/distributor-add",
component: DistriButorAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/distributor-edit',
+ path: "/home/distributor-edit",
component: DistriButorEdit,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangecode-list',
+ path: "/home/exchangecode-list",
component: ExchangeCodeList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangecode-add',
+ path: "/home/exchangecode-add",
component: ExchangeCodeAdd,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangecode-edit',
+ path: "/home/exchangecode-edit",
component: ExchangeCodeEdit,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangecode-copyCode',
+ path: "/home/exchangecode-copyCode",
component: CopyCode,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchange-addcommodity',
+ path: "/home/exchange-addcommodity",
component: ExchangeCommodity,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/product-edit',
+ path: "/home/product-edit",
component: ProductEdit,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/system/account-list',
+ path: "/home/system/account-list",
component: AccountList,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/exchangecode-exchangecodeAdd',
+ path: "/home/exchangecode-exchangecodeAdd",
component: ExchangeCodeAdds,
- meta: { exact: true }
+ meta: { exact: true },
},
{
- path: '/home/coupon-list',
+ path: "/home/coupon-list",
component: CouponList,
- meta: { exact: true }
- }
-]
+ meta: { exact: true },
+ },
+ {
+ path: "/home/coupon-add-edit",
+ component: CouponAddEdit,
+ meta: { exact: true },
+ },
+];
/* 不显示路由 */
const noShowSubMenu = [
- '/home/extension',
- '/home/overview',
- '/home/plan-create',
- '/home/mytempMould',
- '/home/edittemplate'
-]
+ "/home/extension",
+ "/home/overview",
+ "/home/plan-create",
+ "/home/mytempMould",
+ "/home/edittemplate",
+];
-export { router, noShowSubMenu }
+export { router, noShowSubMenu };