Browse Source

fix : 优惠券问题修改

tags/PMS_Frontend_v1.0.6-develop
chenglb 1 year ago
parent
commit
09239d66b5
  1. 443
      src/assets/fonts/font_pda/demo_index.html
  2. 88
      src/assets/fonts/font_pda/iconfont.css
  3. 2
      src/assets/fonts/font_pda/iconfont.js
  4. 133
      src/assets/fonts/font_pda/iconfont.json
  5. BIN
      src/assets/fonts/font_pda/iconfont.ttf
  6. BIN
      src/assets/fonts/font_pda/iconfont.woff
  7. BIN
      src/assets/fonts/font_pda/iconfont.woff2
  8. BIN
      src/assets/images/red_package.png
  9. BIN
      src/assets/images/template_bg.jpg
  10. 11
      src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/Add.jsx
  11. 30
      src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/Detail.jsx
  12. 58
      src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/TemplateConfig.jsx
  13. 65
      src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/index.scss
  14. 7
      src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/loadable.jsx
  15. 3
      src/pages/OperationCenter/OperationSales/CouponMgm/CouponDistribute/index.scss
  16. 12
      src/pages/OperationCenter/OperationSales/CouponMgm/CouponDistribute/loadable.jsx
  17. 101
      src/pages/OperationCenter/OperationSales/CouponMgm/CouponRules/loadable.jsx
  18. 3
      src/services/OperationCenter/OperationSales/index.js

443
src/assets/fonts/font_pda/demo_index.html
File diff suppressed because it is too large
View File

88
src/assets/fonts/font_pda/iconfont.css
File diff suppressed because it is too large
View File

2
src/assets/fonts/font_pda/iconfont.js
File diff suppressed because it is too large
View File

133
src/assets/fonts/font_pda/iconfont.json

@ -6,6 +6,139 @@
"description": "", "description": "",
"glyphs": [ "glyphs": [
{ {
"icon_id": "21800722",
"name": "时间",
"font_class": "shijian",
"unicode": "e61c",
"unicode_decimal": 58908
},
{
"icon_id": "37735919",
"name": "业务配置",
"font_class": "yewupeizhi",
"unicode": "e783",
"unicode_decimal": 59267
},
{
"icon_id": "37735918",
"name": "异常管理",
"font_class": "yichangguanli",
"unicode": "e784",
"unicode_decimal": 59268
},
{
"icon_id": "37735911",
"name": "商户管理员",
"font_class": "shanghuguanliyuan",
"unicode": "e785",
"unicode_decimal": 59269
},
{
"icon_id": "37735922",
"name": "电子发票",
"font_class": "dianzifapiao",
"unicode": "e786",
"unicode_decimal": 59270
},
{
"icon_id": "37735916",
"name": "管理员管理",
"font_class": "guanliyuanguanli",
"unicode": "e787",
"unicode_decimal": 59271
},
{
"icon_id": "37735921",
"name": "区域管理",
"font_class": "quyuguanli",
"unicode": "e788",
"unicode_decimal": 59272
},
{
"icon_id": "37735917",
"name": "支付配置",
"font_class": "zhifupeizhi",
"unicode": "e789",
"unicode_decimal": 59273
},
{
"icon_id": "37735908",
"name": "异常处理",
"font_class": "yichangchuli",
"unicode": "e78a",
"unicode_decimal": 59274
},
{
"icon_id": "37735915",
"name": "发票配置",
"font_class": "fapiaopeizhi",
"unicode": "e78b",
"unicode_decimal": 59275
},
{
"icon_id": "37735913",
"name": "财务报表",
"font_class": "caiwubaobiao",
"unicode": "e78c",
"unicode_decimal": 59276
},
{
"icon_id": "37735914",
"name": "订单查询",
"font_class": "dingdanchaxun",
"unicode": "e78d",
"unicode_decimal": 59277
},
{
"icon_id": "37735912",
"name": "业务记录",
"font_class": "yewujilu",
"unicode": "e78e",
"unicode_decimal": 59278
},
{
"icon_id": "37735910",
"name": "组织架构",
"font_class": "zuzhijiagou",
"unicode": "e78f",
"unicode_decimal": 59279
},
{
"icon_id": "37735907",
"name": "功能信息",
"font_class": "gongnengxinxi",
"unicode": "e790",
"unicode_decimal": 59280
},
{
"icon_id": "37735909",
"name": "角色管理",
"font_class": "jiaoseguanli",
"unicode": "e791",
"unicode_decimal": 59281
},
{
"icon_id": "37735924",
"name": "交易流水",
"font_class": "jiaoyiliushui",
"unicode": "e780",
"unicode_decimal": 59264
},
{
"icon_id": "37735920",
"name": "商户信息",
"font_class": "shanghuxinxi",
"unicode": "e781",
"unicode_decimal": 59265
},
{
"icon_id": "37735923",
"name": "清分结算",
"font_class": "qingfenjiesuan",
"unicode": "e782",
"unicode_decimal": 59266
},
{
"icon_id": "37198877", "icon_id": "37198877",
"name": "路内停车", "name": "路内停车",
"font_class": "luneitingche", "font_class": "luneitingche",

BIN
src/assets/fonts/font_pda/iconfont.ttf

BIN
src/assets/fonts/font_pda/iconfont.woff

BIN
src/assets/fonts/font_pda/iconfont.woff2

BIN
src/assets/images/red_package.png

After

Width: 1044  |  Height: 840  |  Size: 30 KiB

BIN
src/assets/images/template_bg.jpg

After

Width: 1080  |  Height: 2026  |  Size: 159 KiB

11
src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/Add.jsx

@ -82,6 +82,17 @@ function Add(props) {
form form
.validateFields() .validateFields()
.then((values) => { .then((values) => {
//
let flag = true;
couponList.map(item=>{
if(!item.num || !item.total || !item.rule_id){
flag = false
}
})
if(!flag){
message.error('优惠券数据设置不完整')
return
}
let temp_time_range = values.activity_time.map((item) => { let temp_time_range = values.activity_time.map((item) => {
return item.format("YYYY-MM-DD HH:mm:ss"); return item.format("YYYY-MM-DD HH:mm:ss");
}) })

30
src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/Detail.jsx

@ -1,5 +1,5 @@
import React, { useEffect, useState } from "react"; import React, { useEffect, useState } from "react";
import { Descriptions, Modal } from "antd";
import { Descriptions, Modal ,Button} from "antd";
import ajax from "@/services"; import ajax from "@/services";
function index(props) { function index(props) {
const { visible, close, record = {} } = props; const { visible, close, record = {} } = props;
@ -19,31 +19,19 @@ function index(props) {
// getDetail(record.id); // getDetail(record.id);
}, []); }, []);
return ( return (
<Modal open={visible} onCancel={close} width={1200} destroyOnClose>
<Modal open={visible} onCancel={close} width={1200} footer={<Button onClick={close}>返回</Button>} destroyOnClose>
<Descriptions title="活动详情"> <Descriptions title="活动详情">
<Descriptions.Item label="活动名称">
{record.activity_name}
</Descriptions.Item>
<Descriptions.Item label="活动时间">{record.time}</Descriptions.Item>
<Descriptions.Item label="活动名称">{record.activity_name} </Descriptions.Item>
<Descriptions.Item label="活动时间">{record.start_time}{record.end_time}</Descriptions.Item>
<Descriptions.Item label="关联优惠券">{coupon}</Descriptions.Item> <Descriptions.Item label="关联优惠券">{coupon}</Descriptions.Item>
<Descriptions.Item label="领取规则">
{record.activity_name}
</Descriptions.Item>
<Descriptions.Item label="领取规则">活动期间每人每日可领取{record.everybody},每人总共可领取{record.everybody_total}</Descriptions.Item>
<Descriptions.Item label="发行量">{record.issue_num}</Descriptions.Item> <Descriptions.Item label="发行量">{record.issue_num}</Descriptions.Item>
<Descriptions.Item label="领取量">
{record.examine_num}
</Descriptions.Item>
<Descriptions.Item label="领取量">{record.examine_num} </Descriptions.Item>
<Descriptions.Item label="使用量">{record.apply_num}</Descriptions.Item> <Descriptions.Item label="使用量">{record.apply_num}</Descriptions.Item>
<Descriptions.Item label="活动状态">
{record.active_status}
</Descriptions.Item>
<Descriptions.Item label="审核状态">
{record.is_examine}
</Descriptions.Item>
<Descriptions.Item label="活动状态">{record.status_zhname}</Descriptions.Item>
<Descriptions.Item label="审核状态">{record.is_examine_zhname} </Descriptions.Item>
<Descriptions.Item label="创建人">{record.founder}</Descriptions.Item> <Descriptions.Item label="创建人">{record.founder}</Descriptions.Item>
<Descriptions.Item label="创建时间">
{record.create_time}
</Descriptions.Item>
<Descriptions.Item label="创建时间">{record.create_time} </Descriptions.Item>
</Descriptions> </Descriptions>
</Modal> </Modal>
); );

58
src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/TemplateConfig.jsx

@ -13,9 +13,9 @@ function TemplateConfig(props) {
// id: record.id, // id: record.id,
// activity_avatar : '', // activity_avatar : '',
// background : "#ffffff", // background : "#ffffff",
// text_color: "#000000",
// text_color: "red",
description: record.description, description: record.description,
is_share: record.is_share,
is_share: record.is_share || '1',
title: record.title, title: record.title,
copywriting: record.copywriting, copywriting: record.copywriting,
pic: record.pic pic: record.pic
@ -82,32 +82,36 @@ function TemplateConfig(props) {
message.error('请输入分享文案') message.error('请输入分享文案')
return return
} }
// if(formData.pic == ''){ // todo
// message.error('')
// return
// }
if(formData.pic == ''){ // todo
message.error('请上传分享图片')
return
}
ajax.getTemplateInsert({...formData, id: record.id}).then((res) => { ajax.getTemplateInsert({...formData, id: record.id}).then((res) => {
if (res.status === 20000) { if (res.status === 20000) {
message.success("添加成功"); message.success("添加成功");
setFormData({
description: "", //
is_share: "1",
title: "",
copywriting: "",
pic: ""
})
resetFormData()
close() close()
} }
}); });
} }
const resetFormData = ()=>{
setFormData({
description: "", //
is_share: "1",
title: "",
copywriting: "",
pic: ""
})
}
useEffect(()=>{ useEffect(()=>{
// console.log(formData, 'formdata') // console.log(formData, 'formdata')
},[formData]) },[formData])
return ( return (
<Modal open={visible} onCancel={close} width={1200} onOk={submit} destroyOnClose>
<Modal open={visible} onCancel={()=>{close(); resetFormData();}} width={1200} onOk={submit} destroyOnClose>
<div className="template-content-wrapper"> <div className="template-content-wrapper">
<div className="left-wrapper"> <div className="left-wrapper">
<div className="big-title">模板配置</div> <div className="big-title">模板配置</div>
@ -171,7 +175,7 @@ function TemplateConfig(props) {
<div className="title">分享图片</div> <div className="title">分享图片</div>
<div> <div>
<Upload <Upload
name="avatar"
name="file"
listType="picture-card" listType="picture-card"
className="avatar-uploader" className="avatar-uploader"
showUploadList={false} showUploadList={false}
@ -194,17 +198,23 @@ function TemplateConfig(props) {
<div className="image-wrapper"> <div className="image-wrapper">
{/* <img src={formData.activity_avatar}></img> */} {/* <img src={formData.activity_avatar}></img> */}
</div> </div>
<div className="word-content" style={{backgroundColor: formData.background}}>
<div style={{color: formData.text_color}}>请输入手机号领取收费券</div>
<div className="get-code">
<div className="input-tel">请输入手机号</div>
<span className="btn" style={{color: formData.text_color}}>获取验证码</span>
<div className="word-content">
<div className="red-pack-wrapper">
<div style={{color: '#323232',textAlign: "center"}}>请输入手机号领取收费券</div>
<div className="get-code">
<div className="input-tel">请输入手机号</div>
<span className="btn" style={{color: '#323232'}}>获取验证码</span>
</div>
<div className="input-code">请输入短信验证码</div>
<div className="get-btn">立即领取</div>
</div>
<div className="activity-desc" >
<div className="desc-title">活动说明</div>
<div className="desc-content">{formData.description}</div>
</div> </div>
<div className="input-code">请输入短信验证码</div>
<div className="get-btn">立即领取</div>
<div style={{color: formData.text_color}}>活动说明</div>
<div style={{color: formData.text_color}}>{formData.description}</div>
</div> </div>
</div> </div>
</div> </div>

65
src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/index.scss

@ -45,6 +45,7 @@ $color-primary: var(--color-primary);
} }
.right-wrapper{ .right-wrapper{
width: 50%; width: 50%;
.review-page{ .review-page{
height: 600px; height: 600px;
width: 340px; width: 340px;
@ -52,6 +53,8 @@ $color-primary: var(--color-primary);
padding: 10px; padding: 10px;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
background: url(../../../../../assets/images/template_bg.jpg) center center no-repeat;
background-size: 100% 100%;
} }
.image-wrapper{ .image-wrapper{
width: 320px; width: 320px;
@ -72,13 +75,14 @@ $color-primary: var(--color-primary);
display: flex; display: flex;
margin-bottom: 10px; margin-bottom: 10px;
margin-top: 10px; margin-top: 10px;
padding-left: 23px;
.input-tel{ .input-tel{
background-color: #fff; background-color: #fff;
border: 1px solid #cdd3df; border: 1px solid #cdd3df;
height: 40px;
line-height: 40px;
height: 30px;
line-height: 30px;
// margin-left: 10px; // margin-left: 10px;
width: 190px;
width: 170px;
border-top-left-radius: 5px; border-top-left-radius: 5px;
border-bottom-left-radius: 5px; border-bottom-left-radius: 5px;
padding-left: 10px; padding-left: 10px;
@ -86,10 +90,10 @@ $color-primary: var(--color-primary);
.btn{ .btn{
// background-color: #ebf40e; // background-color: #ebf40e;
color: #323232; color: #323232;
height: 40px;
line-height: 40px;
height: 30px;
line-height: 30px;
display: inline-block; display: inline-block;
width: 100px;
width: 80px;
text-align: center; text-align: center;
border: 1px solid #cdd3df; border: 1px solid #cdd3df;
border-top-right-radius: 5px; border-top-right-radius: 5px;
@ -100,25 +104,54 @@ $color-primary: var(--color-primary);
background-color: #fff; background-color: #fff;
color: #ccddff; color: #ccddff;
border: 1px solid #cdd3df; border: 1px solid #cdd3df;
width: 290px;
width: 250px;
margin-left: 23px;
// margin-left: 10px; // margin-left: 10px;
height: 40px;
line-height: 40px;
height: 30px;
line-height: 30px;
border-radius: 5px; border-radius: 5px;
margin-bottom: 10px; margin-bottom: 10px;
padding-left: 10px; padding-left: 10px;
} }
.get-btn{ .get-btn{
background-color: #fea12a;
color: #fff;
height: 50px;
background-color: #ffe4aa;
color: #9f2b13;
font-weight: 700;
height: 40px;
width: 200px; width: 200px;
margin-left: 60px;
line-height: 50px;
margin-left: 50px;
margin-top: 50px;
line-height: 40px;
text-align: center; text-align: center;
border-radius: 5px;
font-size: 20px;
border-radius: 10px;
font-size: 16px;
margin-bottom: 40px; margin-bottom: 40px;
} }
.red-pack-wrapper{
background: url(../../../../../assets/images/red_package.png);
background-size: 100% 100%;
height: 230px;
padding-top: 10px;
}
.activity-desc{
background-color: #fff;
height: 120px;
margin-top:20px;
border-radius: 5px;
}
.desc-title{
color: #9f2b13;
margin: 0 auto;
width: 100px;
font-weight: 700;
border-radius: 5px;
text-align: center;
background-color: #ffffba;
}
.desc-content{
color: #6a4c3a;
padding: 0 10px;
font-size: 12px;
}
} }
} }

7
src/pages/OperationCenter/OperationSales/CouponMgm/ActivitySpecificTopic/loadable.jsx

@ -146,7 +146,12 @@ function ActivitySpecificTopic() {
const [addModal, setAddModal] = useState({ const [addModal, setAddModal] = useState({
visible: false, visible: false,
record: {}, record: {},
close: () => setAddModal({ ...addModal, visible: false }),
close: () => {
setAddModal({ ...addModal, visible: false })
if(tableRef.current){
tableRef.current.fetch()
}
},
}); });
const [templateModal, setTemplateModal] = useState({ const [templateModal, setTemplateModal] = useState({

3
src/pages/OperationCenter/OperationSales/CouponMgm/CouponDistribute/index.scss

@ -149,6 +149,9 @@ $color-primary : var(--color-primary);
.ant-form-horizontal .ant-form-item-label label{ .ant-form-horizontal .ant-form-item-label label{
width: 105px; width: 105px;
} }
.ant-space-horizontal{
align-items: flex-start;
}
} }
.detail-container{ .detail-container{

12
src/pages/OperationCenter/OperationSales/CouponMgm/CouponDistribute/loadable.jsx

@ -23,7 +23,7 @@ function CouponDistribute(props) {
}) })
const parameter = { const parameter = {
pn: 1, pn: 1,
size: Number(pageSizeOptions[0]), //
page_size: Number(pageSizeOptions[0]), //
activity_name: "", activity_name: "",
} }
const [formData, setFormData] = useState(parameter) const [formData, setFormData] = useState(parameter)
@ -127,10 +127,10 @@ function CouponDistribute(props) {
} }
// //
const changeLength = (pn, length) => { const changeLength = (pn, length) => {
setFormData(Object.assign({}, formData, { pn: 1, size: length }))
setLastFormData(Object.assign({}, lastFormData, { pn: 1, size: length }))
lastFormDataRef.current = Object.assign({}, lastFormData, { pn: 1, size: length })
getData(Object.assign({}, lastFormData, { pn: 1, size: length }))
setFormData(Object.assign({}, formData, { pn: 1, page_size: length }))
setLastFormData(Object.assign({}, lastFormData, { pn: 1, page_size: length }))
lastFormDataRef.current = Object.assign({}, lastFormData, { pn: 1, page_size: length })
getData(Object.assign({}, lastFormData, { pn: 1, page_size: length }))
} }
// //
const getSearchData = (data = formData) => { const getSearchData = (data = formData) => {
@ -210,7 +210,7 @@ function CouponDistribute(props) {
showTotal={() => `${resultData.total}`} showTotal={() => `${resultData.total}`}
total={resultData.total} total={resultData.total}
current={lastFormData.pn} current={lastFormData.pn}
pageSize={lastFormData.size}
pageSize={lastFormData.page_size}
pageSizeOptions={pageSizeOptions} pageSizeOptions={pageSizeOptions}
onChange={changePn} onChange={changePn}
onShowSizeChange={changeLength} onShowSizeChange={changeLength}

101
src/pages/OperationCenter/OperationSales/CouponMgm/CouponRules/loadable.jsx

@ -27,8 +27,8 @@ function CouponRules() {
const [formData, setFormData] = useSetState({ const [formData, setFormData] = useSetState({
name: defaultParams ? defaultParams.name : '', name: defaultParams ? defaultParams.name : '',
status: defaultParams ? defaultParams.status : '',
coupon_type: defaultParams ? defaultParams.coupon_type : '',
status: defaultParams ? defaultParams.status : '0',
coupon_type: defaultParams ? defaultParams.coupon_type : '0',
}) })
const [operatorOptions, setOperatorOptions] = useState([]) // const [operatorOptions, setOperatorOptions] = useState([]) //
const [departOptions, setDepartOptions] = useState([]) const [departOptions, setDepartOptions] = useState([])
@ -43,7 +43,7 @@ function CouponRules() {
const [loading, setLoading] = useState(false) // const [loading, setLoading] = useState(false) //
const [pageData, setPageData] = useSetState({ // const [pageData, setPageData] = useSetState({ //
pn: defaultParams?.pn || 1, pn: defaultParams?.pn || 1,
size:defaultParams?.page_size || 20,
page_size:defaultParams?.page_size || 20,
}) })
const [dataSource, setDataSource] = useState([]) const [dataSource, setDataSource] = useState([])
@ -136,6 +136,7 @@ function CouponRules() {
if (res.status == 20000) { if (res.status == 20000) {
message.success(res.message) message.success(res.message)
setIsTakedownModalOpen(false) setIsTakedownModalOpen(false)
getCouponList(params.current)
} else { } else {
message.error(res.message) message.error(res.message)
} }
@ -151,6 +152,7 @@ function CouponRules() {
if (res.status == 20000) { if (res.status == 20000) {
message.success(res.message) message.success(res.message)
setDeleteModalOpen(false) setDeleteModalOpen(false)
getCouponList(params.current)
} else { } else {
message.error(res.message) message.error(res.message)
} }
@ -230,7 +232,7 @@ function CouponRules() {
} }
setPageData({ setPageData({
pn: pn, pn: pn,
size: pageSize,
page_size: pageSize,
}) })
} }
@ -239,7 +241,7 @@ function CouponRules() {
// console.log(current,pageSize) // console.log(current,pageSize)
setPageData({ setPageData({
pn: current, pn: current,
size: pageSize,
page_size: pageSize,
}) })
} }
@ -247,7 +249,7 @@ function CouponRules() {
const search = () => { const search = () => {
setPageData({ setPageData({
pn: 1, pn: 1,
size: 20
page_size: 20
}) })
} }
@ -277,7 +279,7 @@ function CouponRules() {
return return
} }
let submitData = {...currentCouponInfo} let submitData = {...currentCouponInfo}
if(submitData.effective_date == 2 ){
if(submitData.effective_date == 2 ){ //
if(customDay== 0 && customHour == 0 && customMinute == 0){ if(customDay== 0 && customHour == 0 && customMinute == 0){
message.error('有效日期需要设置时间范围') message.error('有效日期需要设置时间范围')
return return
@ -287,7 +289,7 @@ function CouponRules() {
} }
if(currentCouponId){ // if(currentCouponId){ //
ajax.handleCouponEdit({...currentCouponInfo ,id: currentCouponId }).then(res => {
ajax.handleCouponEdit({...submitData ,id: currentCouponId }).then(res => {
if (res.status == 20000) { if (res.status == 20000) {
message.success(res.message) message.success(res.message)
setShowEdit(false) setShowEdit(false)
@ -303,7 +305,7 @@ function CouponRules() {
}) })
}else{ // }else{ //
ajax.handleCouponInsert(currentCouponInfo).then(res => {
ajax.handleCouponInsert(submitData).then(res => {
if (res.status == 20000) { if (res.status == 20000) {
message.success(res.message) message.success(res.message)
// getCouponList() // getCouponList()
@ -324,25 +326,64 @@ function CouponRules() {
const validateParams = ()=>{ const validateParams = ()=>{
let flag = true let flag = true
for(let key in validateRules){
if(!currentCouponInfo[key] && !validateRules[key].relation){
message.error(validateRules[key].tip)
flag =false
break
}else if(validateRules[key].relation){ //
if(currentCouponInfo[validateRules[key].relation] == validateRules[key].value && !currentCouponInfo[key]){
message.error(validateRules[key].tip)
flag =falsesetcurrentCouponId
break
}
}
// for(let key in validateRules){
// if(!currentCouponInfo[key] && !validateRules[key].relation){
// message.error(validateRules[key].tip)
// flag =false
// break
// }else if(validateRules[key].relation){ //
// if(currentCouponInfo[validateRules[key].relation] == validateRules[key].value && !currentCouponInfo[key]){
// message.error(validateRules[key].tip)
// flag =falsesetcurrentCouponId
// break
// }
// }
// }
// name: {tip: ""},
// mode: {tip: ""},
// type: {tip: ""},
// // value: {tip: ""},
// // value_condition: {tip: "使"},
// hour : {tip: ""},
// effective_date: {tip: ""},
// effctive_value: {tip: "", relation: 'effective_date' , value: 1},
// // effctive_value2: {tip: "", relation: 'effective_date' , value: 2 },
// terminal: {tip: ""},
// // use_scope: {tip: "使",condition: ''},
// // use_content: {tip: "" , condition : ''},
// illustrate: {tip: "使"}
if(!currentCouponInfo.name){
message.error('优惠券名称不能为空')
return false
}
if(!currentCouponInfo.mode){
message.error('模式不能为空')
return false
}
if(currentCouponInfo.mode == '2' && !currentCouponInfo.partner){
message.error('合作方不能为空')
return false
}
if(!currentCouponInfo.type){
message.error('优惠券类型不能为空')
return false
} }
if(!currentCouponInfo.hour){
message.error('欠费时长不能为空')
return false
}
if(currentCouponInfo.use_scope == 1 && currentCouponInfo.use_content == ''){ if(currentCouponInfo.use_scope == 1 && currentCouponInfo.use_content == ''){
message.error('路段不能为空') message.error('路段不能为空')
flag =false
return false
}else if(currentCouponInfo.use_scope == 2 && currentCouponInfo.use_content == ''){ }else if(currentCouponInfo.use_scope == 2 && currentCouponInfo.use_content == ''){
message.error('商户不能为空') message.error('商户不能为空')
flag =false
return false
} }
return flag return flag
} }
@ -351,11 +392,15 @@ function CouponRules() {
setCurrentCouponInfo({}) setCurrentCouponInfo({})
setSelectedKeys([]) setSelectedKeys([])
setTargetKeys([]) setTargetKeys([])
setCustomDay(0)
setCustomHour(0)
setCustomMinute(0)
} }
const hideRightPanel = ()=>{ const hideRightPanel = ()=>{
setShowEdit(false); setShowEdit(false);
setCurrentCouponInfo({})
// setCurrentCouponInfo({})
resetCurrentCouponInfo()
setCurrentCouponId('') setCurrentCouponId('')
setJustCheck(false) setJustCheck(false)
} }
@ -588,7 +633,7 @@ function CouponRules() {
<div className="op-btn" onClick={()=>{clickDropDown("2",record)}}>修改</div> <div className="op-btn" onClick={()=>{clickDropDown("2",record)}}>修改</div>
<div className="op-btn" onClick={()=>{clickDropDown("3",record)}}>下架</div> <div className="op-btn" onClick={()=>{clickDropDown("3",record)}}>下架</div>
</div> </div>
}else{ //
}else{ //
content = <div> content = <div>
<div className="op-btn" onClick={()=>{clickDropDown("1",record)}}>查看</div> <div className="op-btn" onClick={()=>{clickDropDown("1",record)}}>查看</div>
<div className="op-btn" onClick={()=>{clickDropDown("2",record)}}>修改</div> <div className="op-btn" onClick={()=>{clickDropDown("2",record)}}>修改</div>
@ -619,7 +664,7 @@ function CouponRules() {
// showTotal={() => ` ${total_records} `} // showTotal={() => ` ${total_records} `}
total={resultData.total} total={resultData.total}
current={pageData.pn} current={pageData.pn}
pageSize={pageData.size}
pageSize={pageData.page_size}
pageSizeOptions={dictionary?.pageSizeOptions} pageSizeOptions={dictionary?.pageSizeOptions}
onChange={onChangePn} onChange={onChangePn}
onShowSizeChange={onShowSizeChange} onShowSizeChange={onShowSizeChange}
@ -674,7 +719,7 @@ function CouponRules() {
required={true} required={true}
disabled={justCheck} disabled={justCheck}
yisaData={sysConfig.coupon?.length ? sysConfig.coupon.slice(1,4) : []} yisaData={sysConfig.coupon?.length ? sysConfig.coupon.slice(1,4) : []}
defaultValue={ currentCouponInfo.type || null }
defaultValue={ currentCouponInfo.type || '1' }
placeholder="" placeholder=""
hasUnlimited={ false } hasUnlimited={ false }
showClose={true} showClose={true}
@ -804,7 +849,7 @@ function CouponRules() {
disabled={justCheck} disabled={justCheck}
yisaData={[{label: '全部', value: 0},{label: '按车场', value: 1},{label: '按商户', value: 2}]} yisaData={[{label: '全部', value: 0},{label: '按车场', value: 1},{label: '按商户', value: 2}]}
// defaultValue={ currentCouponInfo.use_scope || null } // defaultValue={ currentCouponInfo.use_scope || null }
defaultValue={ 1 }
defaultValue={ 0 }
placeholder="" placeholder=""
hasUnlimited={ false } hasUnlimited={ false }
showClose={true} showClose={true}

3
src/services/OperationCenter/OperationSales/index.js

@ -261,5 +261,6 @@ export default {
yardDiscountDown, yardDiscountDown,
yardDiscountDelete, yardDiscountDelete,
handleCouponDown, handleCouponDown,
handleAuditTemplate
handleAuditTemplate,
handleCouponEdit
}; };
Loading…
Cancel
Save