Commit f9a4fdd5 authored by 杨鑫's avatar 杨鑫

Merge branch 'feature/expiration-date-up' into 'master'

Feature/expiration date up

See merge request !75
parents 47411217 cf426141
const isProduction = process.env.NODE_ENV === 'production'; const isProduction = process.env.NODE_ENV === 'production';
const isPre = process.env.PRE_ENV === 'pre'; const isPre = process.env.PRE_ENV === 'pre';
const environment = 'sc1'; const environment = 'xyqb';
const envAPi = { const envAPi = {
api: `https://security-${environment}.liangkebang.net`, //'https://security-xyqb.liangkebang.net', api: `https://security-${environment}.liangkebang.net`, //'https://security-xyqb.liangkebang.net',
kdspOpApi: `https://sc-merchant-api-${environment}.liangkebang.net`, kdspOpApi: `https://sc-merchant-api-${environment}.liangkebang.net`,
......
...@@ -34,11 +34,9 @@ export default props => { ...@@ -34,11 +34,9 @@ export default props => {
const geocoder = new window.AMap.Geocoder({ const geocoder = new window.AMap.Geocoder({
city, city,
}); });
geocoder.getLocation(addrInfo.address, (status, result) => { geocoder.getLocation(addrInfo.address, (status, result) => {
if (status === 'complete' && result.geocodes.length) { if (status === 'complete' && result.geocodes.length) {
const { lng, lat } = result.geocodes[0].location; const { lng, lat } = result.geocodes[0].location;
console.log(result.geocodes[0].location);
setLnglat([lng, lat]); setLnglat([lng, lat]);
setLnglatText(`${lng},${lat}`); setLnglatText(`${lng},${lat}`);
} else { } else {
...@@ -73,7 +71,7 @@ export default props => { ...@@ -73,7 +71,7 @@ export default props => {
created: getPoint, created: getPoint,
click: onGetPoint, click: onGetPoint,
}} }}
zoom={15} zoom={14}
> >
<Marker position={lnglat}></Marker> <Marker position={lnglat}></Marker>
</Map> </Map>
......
...@@ -315,6 +315,8 @@ const filterServiceItem = (type, serviceItem) => { ...@@ -315,6 +315,8 @@ const filterServiceItem = (type, serviceItem) => {
resetTime(serviceItem.purchaseStartTime), resetTime(serviceItem.purchaseStartTime),
resetTime(serviceItem.purchaseEndTime), resetTime(serviceItem.purchaseEndTime),
], // 购买开始时间 ], // 购买开始时间
validityPeriodType: serviceItem.validityPeriodType,
validityPeriodDays: serviceItem.validityPeriodDays,
shopIds: serviceItem.shopIds || [], // 适用门店列表 shopIds: serviceItem.shopIds || [], // 适用门店列表
unavailableDate: serviceItem.unavailableDate, // 不可用日期 unavailableDate: serviceItem.unavailableDate, // 不可用日期
useTimeDescription: serviceItem.useTimeDescription, // 使用时间 useTimeDescription: serviceItem.useTimeDescription, // 使用时间
......
import { Form, Input, Select, Checkbox, DatePicker } from 'antd'; import { Form, Input, Select, Checkbox, DatePicker, Radio, InputNumber } from 'antd';
import React, { useEffect, forwardRef, useImperativeHandle, useContext } from 'react'; import React, { useEffect, forwardRef, useImperativeHandle, useContext, useState } from 'react';
import moment from 'moment'; import moment from 'moment';
import { WeeksList, formItemLayout } from '../config'; import { WeeksList, formItemLayout } from '../config';
import { ServiceContext } from '../context'; import { ServiceContext } from '../context';
...@@ -23,6 +23,7 @@ const FormRuleSetting = forwardRef((props, ref) => { ...@@ -23,6 +23,7 @@ const FormRuleSetting = forwardRef((props, ref) => {
const { editData, supplierIdList } = props; const { editData, supplierIdList } = props;
const [form] = Form.useForm(); const [form] = Form.useForm();
const customer = useContext(ServiceContext); const customer = useContext(ServiceContext);
const [dateType, setDateType] = useState(1);
// 判断是否有禁用的店铺 禁用店铺不显示 // 判断是否有禁用的店铺 禁用店铺不显示
const getIsInShops = arr => { const getIsInShops = arr => {
...@@ -41,6 +42,11 @@ const FormRuleSetting = forwardRef((props, ref) => { ...@@ -41,6 +42,11 @@ const FormRuleSetting = forwardRef((props, ref) => {
const shopIds = getIsInShops(editData.shopIds); const shopIds = getIsInShops(editData.shopIds);
goodInfo.shopIds = shopIds; goodInfo.shopIds = shopIds;
} }
console.log('goodInfo :>> ', goodInfo);
if (goodInfo.validityPeriodType) {
console.log('+goodInfo.validityPeriodType :>> ', +goodInfo.validityPeriodType);
setDateType(+goodInfo.validityPeriodType);
}
form.setFieldsValue(goodInfo); form.setFieldsValue(goodInfo);
} }
}, [customer.isEdit, customer.isUseCache, editData]); }, [customer.isEdit, customer.isUseCache, editData]);
...@@ -48,20 +54,27 @@ const FormRuleSetting = forwardRef((props, ref) => { ...@@ -48,20 +54,27 @@ const FormRuleSetting = forwardRef((props, ref) => {
const onCheck = async () => { const onCheck = async () => {
try { try {
const { useTime, purchaseTime, ...values } = await form.validateFields(); const { useTime, purchaseTime, ...values } = await form.validateFields();
return { const params = {
useStartTime: formatTime(useTime[0]),
useEndTime: formatTime(useTime[1]),
purchaseStartTime: formatTime(purchaseTime[0]), purchaseStartTime: formatTime(purchaseTime[0]),
purchaseEndTime: formatTime(purchaseTime[1]), purchaseEndTime: formatTime(purchaseTime[1]),
temp: 'serviceItem', temp: 'serviceItem',
...values, ...values,
}; };
if (useTime && useTime.length === 2) {
params.useStartTime = formatTime(useTime[0]);
params.useEndTime = formatTime(useTime[1]);
}
return params;
} catch (errorInfo) { } catch (errorInfo) {
return null; return null;
} }
}; };
const onChangeDateType = e => {
const v = +e.target.value;
setDateType(v);
};
const getFormValues = debounce(() => { const getFormValues = debounce(() => {
const values = form.getFieldsValue(); const values = form.getFieldsValue();
props.onValuesChange({ serviceItem: values }); props.onValuesChange({ serviceItem: values });
...@@ -81,7 +94,8 @@ const FormRuleSetting = forwardRef((props, ref) => { ...@@ -81,7 +94,8 @@ const FormRuleSetting = forwardRef((props, ref) => {
form={form} form={form}
name="register" name="register"
initialValues={{ initialValues={{
useTime: [], // 使用开始时间 // useTime: [], // 使用开始时间
validityPeriodType: 1, // 有效期类型
// useEndTime: '', // 使用结束时间 // useEndTime: '', // 使用结束时间
purchaseTime: [], // 购买开始时间 purchaseTime: [], // 购买开始时间
// purchaseEndTime: '2022-07-27 06', // 购买结束时间 // purchaseEndTime: '2022-07-27 06', // 购买结束时间
...@@ -102,12 +116,34 @@ const FormRuleSetting = forwardRef((props, ref) => { ...@@ -102,12 +116,34 @@ const FormRuleSetting = forwardRef((props, ref) => {
defaultPickerValue={[nowDateTime, nowDateTimeEnd]} defaultPickerValue={[nowDateTime, nowDateTimeEnd]}
/> />
</Form.Item> </Form.Item>
<Form.Item name="useTime" label="有效期" {...rangeConfig}> <Form.Item
<RangePicker name="validityPeriodType"
format="YYYY-MM-DD HH:mm:ss" label="有效期类型"
defaultPickerValue={[nowDateTime, nowDateTimeEnd]} rules={[{ required: true, message: '请选择有效期类型!' }]}
/> >
<Radio.Group onChange={onChangeDateType}>
<Radio value={1}>固定日期</Radio>
<Radio value={2} disabled>
指定范围
</Radio>
</Radio.Group>
</Form.Item> </Form.Item>
{dateType === 1 ? (
<Form.Item name="useTime" label="有效期" {...rangeConfig}>
<RangePicker
format="YYYY-MM-DD HH:mm:ss"
defaultPickerValue={[nowDateTime, nowDateTimeEnd]}
/>
</Form.Item>
) : (
<Form.Item
name="validityPeriodDays"
label="有效期天数"
rules={[{ required: true, message: '请输入有效期天数!' }]}
>
<InputNumber min={1} max={36000} />
</Form.Item>
)}
<Form.Item <Form.Item
name="shopIds" name="shopIds"
label="适用门店" label="适用门店"
......
...@@ -76,6 +76,22 @@ const StoreModal = props => { ...@@ -76,6 +76,22 @@ const StoreModal = props => {
}); });
}; };
const getAreas = arr => {
let areas = areaAddr;
let addr = '';
arr.forEach(c => {
let index = 0;
areas.forEach((item, i) => {
if (item.value === c) {
addr += item.label;
index = i;
}
});
areas = areas[index].children;
});
return addr;
};
// 显示地图 // 显示地图
const openMap = v => { const openMap = v => {
const values = getFieldsValue(); const values = getFieldsValue();
...@@ -96,9 +112,10 @@ const StoreModal = props => { ...@@ -96,9 +112,10 @@ const StoreModal = props => {
} }
}); });
} }
const labels = getAreas(values.addr);
setMapInfo({ setMapInfo({
provice, provice,
address: values.address, address: labels + values.address,
}); });
setVisibleMap(v); setVisibleMap(v);
}; };
...@@ -218,6 +235,7 @@ const StoreModal = props => { ...@@ -218,6 +235,7 @@ const StoreModal = props => {
title="门店信息" title="门店信息"
visible={visible} visible={visible}
width="800px" width="800px"
destroyOnClose
maskClosable={false} maskClosable={false}
onOk={() => onSubmit()} onOk={() => onSubmit()}
onCancel={() => handleCancel()} onCancel={() => handleCancel()}
......
...@@ -30,7 +30,7 @@ export async function searchList(params) { ...@@ -30,7 +30,7 @@ export async function searchList(params) {
// 停启用门店 // 停启用门店
export async function apiEnableStore({ id, state }) { export async function apiEnableStore({ id, state }) {
const data = await request.get(`/api/merchants/shops/state/edit/${id}/${state}`, { const data = await request.get(`/api/merchants/shops/states/edit/${id}/${state}`, {
prefix: kdspApi, prefix: kdspApi,
}); });
return data.businessCode; return data.businessCode;
......
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