🎈 perf(优化):
This commit is contained in:
parent
d973905bbe
commit
461744054e
@ -22,7 +22,7 @@ module.exports = {
|
||||
terserOptions: {
|
||||
// compress: true, // 默认使用terser压缩
|
||||
compress: {
|
||||
drop_console: true, // 去掉打印
|
||||
// drop_console: true, // 去掉打印
|
||||
}, // 默认使用terser压缩
|
||||
// mangle: false,
|
||||
keep_classnames: true, // 不改变class名称
|
||||
|
||||
@ -13,7 +13,7 @@ export const BASE_URL = CURRENT_BASE_URL
|
||||
// export const BASE_URL = `https://www.zzfzyc.com/lymarket` // 正式环境
|
||||
// export const BASE_URL = `http://192.168.1.5:40001/lymarket` // 王霞
|
||||
// export const BASE_URL = `http://192.168.1.7:50002/lymarket` // 添
|
||||
// export const BASE_URL = `http://192.168.1.22:50002/lymarket` // 婷
|
||||
// export const BASE_URL = `http://192.168.1.28:50002/lymarket` // 婷
|
||||
// export const BASE_URL = `http://192.168.1.42:50002/lymarket` // 杰
|
||||
|
||||
// CDN
|
||||
|
||||
@ -1,73 +1,72 @@
|
||||
|
||||
//订单状态枚举
|
||||
export const ORDER_STATUS = {
|
||||
SaleorderstatusWaitingPrePayment : {value:10, label:'预付款'}, // 预付款
|
||||
SaleOrderStatusBooking : {value:0, label:'待接单'}, // 待接单
|
||||
SaleOrderStatusArranging : {value:1, label:'配布中'}, // 配布中
|
||||
SaleOrderStatusArranged : {value:2, label:'已配布'}, // 已配布
|
||||
SaleOrderStatusWaitingPayment : {value:7, label:'待付款'}, // 待付款
|
||||
SaleOrderStatusTaking: {value: 11, label:'提货中'}, //提货中
|
||||
SaleOrderStatusWaitingDelivery : {value:3, label:'待发货'}, // 待发货
|
||||
SaleOrderStatusWaitingReceipt : {value:8, label:'待收货'}, // 待收货
|
||||
SaleOrderStatusAlreadyReceipt : {value:9, label:'已收货'}, // 已收货
|
||||
SaleOrderStatusComplete : {value:4, label:'已完成'}, // 已完成
|
||||
SaleOrderStatusRefund : {value:6, label:'已退款'}, // 已退款
|
||||
SaleOrderStatusCancel : {value:5, label:'已取消'}, // 已取消
|
||||
SaleorderstatusWaitingPrePayment: { value: 10, label: '预付款' }, // 预付款
|
||||
SaleOrderStatusBooking: { value: 0, label: '待接单' }, // 待接单
|
||||
SaleOrderStatusArranging: { value: 1, label: '配布中' }, // 配布中
|
||||
SaleOrderStatusArranged: { value: 2, label: '已配布' }, // 已配布
|
||||
SaleOrderStatusWaitingPayment: { value: 7, label: '待付款' }, // 待付款
|
||||
SaleOrderStatusTaking: { value: 11, label: '提货中' }, //提货中
|
||||
SaleOrderStatusWaitingDelivery: { value: 3, label: '待发货' }, // 待发货
|
||||
SaleOrderStatusWaitingReceipt: { value: 8, label: '待收货' }, // 待收货
|
||||
SaleOrderStatusAlreadyReceipt: { value: 9, label: '已收货' }, // 已收货
|
||||
SaleOrderStatusComplete: { value: 4, label: '已完成' }, // 已完成
|
||||
SaleOrderStatusRefund: { value: 6, label: '已退款' }, // 已退款
|
||||
SaleOrderStatusCancel: { value: 5, label: '已取消' }, // 已取消
|
||||
}
|
||||
|
||||
//售后单状态枚举
|
||||
export const AFTER_ORDER_STATUS = {
|
||||
ReturnStageApplying : {value:0, label:'申请中'}, // 申请中
|
||||
ReturnStageWaitCheck : {value:1, label:'退货中'}, // 退货中
|
||||
ReturnStageChecked : {value:2, label:'待验布'}, // 待验布
|
||||
ReturnStageReturned : {value:3, label:'已退款'}, // 已退款
|
||||
ReturnStageCancel : {value:4, label:'已取消'}, // 已取消
|
||||
ReturnStageQualityCheckPendingRefund : {value:5, label:'待退款'}, // 已验布
|
||||
ReturnStageServiceOrderPendingRefund : {value:6, label:'待退款'}, // 待退款
|
||||
ReturnStageRejected : {value:7, label:'已拒绝'}, // 已拒绝
|
||||
ReturnStageApplying: { value: 0, label: '申请中' }, // 申请中
|
||||
ReturnStageWaitCheck: { value: 1, label: '退货中' }, // 退货中
|
||||
ReturnStageChecked: { value: 2, label: '待验布' }, // 待验布
|
||||
ReturnStageReturned: { value: 3, label: '已退款' }, // 已退款
|
||||
ReturnStageCancel: { value: 4, label: '已取消' }, // 已取消
|
||||
ReturnStageQualityCheckPendingRefund: { value: 5, label: '待退款' }, // 已验布
|
||||
ReturnStageServiceOrderPendingRefund: { value: 6, label: '待退款' }, // 待退款
|
||||
ReturnStageRejected: { value: 7, label: '已拒绝' }, // 已拒绝
|
||||
}
|
||||
|
||||
//支付方式
|
||||
export const PAYMENT_METHOD = {
|
||||
PaymentMethodPreDeposit: {value:2, label:'预存款'},
|
||||
PaymentMethodAccountPeriod : {value:3, label:'账期'},
|
||||
PaymentMethodofflineRemittance: {value:1, label:'线下汇款'},
|
||||
PaymentMethodScanCodeToPay: {value:4, label:'扫码支付'},
|
||||
PaymentMethodCashOnDelivery: {value:5, label:'货到付款'},
|
||||
PaymentMethodPreDeposit: { value: 2, label: '预存款' },
|
||||
PaymentMethodAccountPeriod: { value: 3, label: '账期' },
|
||||
PaymentMethodofflineRemittance: { value: 1, label: '线下汇款' },
|
||||
PaymentMethodScanCodeToPay: { value: 4, label: '扫码支付' },
|
||||
PaymentMethodCashOnDelivery: { value: 5, label: '货到付款' },
|
||||
}
|
||||
|
||||
|
||||
//订单类型
|
||||
export const SALE_MODE = {
|
||||
SaLeModeBulk: {value:0, label:'大货'},
|
||||
SaleModeLengthCut: {value:1, label:'剪版'},
|
||||
SaLeModeWeightCut: {value:2, label:'散剪'},
|
||||
}
|
||||
SaLeModeBulk: { value: 0, label: '大货' },
|
||||
SaleModeLengthCut: { value: 1, label: '剪版' },
|
||||
SaLeModeWeightCut: { value: 2, label: '散剪' },
|
||||
}
|
||||
export type saleModeType = 0 | 1 | 2
|
||||
|
||||
//分享场景枚举
|
||||
export const SHARE_SCENE = {
|
||||
ShareDetail: {value:1, label:'详情分享'},
|
||||
SharePage : {value:2, label:'页面分享'},
|
||||
ShareDetail: { value: 1, label: '详情分享' },
|
||||
SharePage: { value: 2, label: '页面分享' },
|
||||
}
|
||||
|
||||
//订阅消息
|
||||
export const SUBSCRIPTION_MESSAGE_SCENE = {
|
||||
SubmitOrder: {value:1, label:'确认下单'},
|
||||
ToPay : {value:2, label:'去付款'},
|
||||
ApplyGoods: {value:3, label: '申请退款'}
|
||||
export const SUBSCRIPTION_MESSAGE_SCENE = {
|
||||
SubmitOrder: { value: 1, label: '确认下单' },
|
||||
ToPay: { value: 2, label: '去付款' },
|
||||
ApplyGoods: { value: 3, label: '申请退款' },
|
||||
}
|
||||
|
||||
//应收单退款状态枚举
|
||||
export const REFUND_STATUS = {
|
||||
ShouldCollectOrderRefundTypeUnknown: {value:0, label:'未知退款'},
|
||||
ShouldCollectOrderRefundTypeAdvanceReceiptRefund: {value:1, label:'预收退款'},
|
||||
ShouldCollectOrderRefundTypeReturnForRefund: {value:2, label:'退货退款'},
|
||||
ShouldCollectOrderRefundTypeSalesRefund: {value:3, label:'销售退款'},
|
||||
ShouldCollectOrderRefundTypeUnknown: { value: 0, label: '未知退款' },
|
||||
ShouldCollectOrderRefundTypeAdvanceReceiptRefund: { value: 1, label: '预收退款' },
|
||||
ShouldCollectOrderRefundTypeReturnForRefund: { value: 2, label: '退货退款' },
|
||||
ShouldCollectOrderRefundTypeSalesRefund: { value: 3, label: '销售退款' },
|
||||
}
|
||||
|
||||
//申请单退款状态枚举
|
||||
export const REFUND_STATUS_ORDER = {
|
||||
ReturnApplyOrderTypeAdvanceReceiptRefund: {value:2, label:'预收退款'}, // 预收退款
|
||||
ReturnApplyOrderTypeReturnForRefund: {value:1, label:'退货退款'}, // 退货退款
|
||||
ReturnApplyOrderTypeSalesRefund: {value:3, label:'销售退款'}, // 销售退款
|
||||
}
|
||||
ReturnApplyOrderTypeAdvanceReceiptRefund: { value: 2, label: '预收退款' }, // 预收退款
|
||||
ReturnApplyOrderTypeReturnForRefund: { value: 1, label: '退货退款' }, // 退货退款
|
||||
ReturnApplyOrderTypeSalesRefund: { value: 3, label: '销售退款' }, // 销售退款
|
||||
}
|
||||
|
||||
@ -13,13 +13,26 @@ type params = {
|
||||
onClickBtn?: (val: number) => void
|
||||
unit?: string
|
||||
disabled?: true | false //是否禁用
|
||||
returnZero?: true | false //少于最小值时是否归0
|
||||
}
|
||||
export default memo((props: params) => {
|
||||
return <Counter {...props}></Counter>
|
||||
})
|
||||
|
||||
const Counter = memo((props: params) => {
|
||||
let { minNum = 0, maxNum = 10000, step = 1, digits = 0, defaultNum = 0, onChange, onBlue, onClickBtn, unit = '', disabled = false } = props
|
||||
let {
|
||||
minNum = 0,
|
||||
maxNum = 10000,
|
||||
step = 1,
|
||||
digits = 0,
|
||||
defaultNum = 0,
|
||||
onChange,
|
||||
onBlue,
|
||||
onClickBtn,
|
||||
returnZero = false,
|
||||
unit = '',
|
||||
disabled = false,
|
||||
} = props
|
||||
const [value, setValue] = useState<any>({ count: defaultNum })
|
||||
useEffect(() => {
|
||||
setValue({ count: defaultNum })
|
||||
@ -38,7 +51,11 @@ const Counter = memo((props: params) => {
|
||||
if (disabled) return false
|
||||
let count = value.count
|
||||
let num_res = Big(count).minus(step).toNumber()
|
||||
num_res = num_res < minNum ? minNum : num_res
|
||||
if (returnZero) {
|
||||
num_res = num_res < minNum ? 0 : num_res
|
||||
} else {
|
||||
num_res = num_res < minNum ? minNum : num_res
|
||||
}
|
||||
setValue({ ...value, count: num_res })
|
||||
onChange?.(parseFloat(num_res))
|
||||
onClickBtn?.(parseFloat(num_res))
|
||||
|
||||
@ -303,6 +303,11 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
setShowLabImage(() => false)
|
||||
}, [])
|
||||
|
||||
const goShop = useCallback(() => {
|
||||
onClose?.()
|
||||
goLink('/pages/index/index', null, 'switchTab')
|
||||
}, [])
|
||||
|
||||
return (
|
||||
<View className={styles.shop_cart_main}>
|
||||
<Popup showTitle={false} show={showPopup} onClose={() => closePopup()}>
|
||||
@ -341,7 +346,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
{!loading && listData?.length == 0 && (
|
||||
<View className={styles.empty}>
|
||||
<View className={styles.title}>暂未选择商品</View>
|
||||
<View className={styles.btn} onClick={() => goLink('/pages/index/index', null, 'switchTab')}>
|
||||
<View className={styles.btn} onClick={goShop}>
|
||||
去选购
|
||||
</View>
|
||||
</View>
|
||||
|
||||
@ -55,7 +55,8 @@ export default () => {
|
||||
const onScanCode = () => {
|
||||
Taro.scanCode({
|
||||
success: (res) => {
|
||||
setSubmitData(() => ({ invitation_code: res.result }))
|
||||
let val = res.result.match(/InviteCode:([a-zA-Z0-9]{4})/)
|
||||
setSubmitData(() => ({ invitation_code: val ? val![1] : '' }))
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
@ -31,7 +31,19 @@ export default memo(({ show = false, onClose, title = '', productId = 0 }: param
|
||||
const [selectList, _] = useState([
|
||||
{ id: 0, step: 1, digits: 0, maxNum: 100000, defaultNum: 1, title: '大货', unit: '条', eunit: 'kg', priceField: 'bulk_price' },
|
||||
{ id: 1, step: 1, digits: 2, maxNum: 9.99, defaultNum: 1, title: '剪板', unit: '米', eunit: 'm', priceField: 'length_cut_price' },
|
||||
{ id: 2, step: 1, digits: 2, minNum: 3, maxNum: 100000, defaultNum: 3, title: '散剪', unit: '米', eunit: 'kg', priceField: 'weight_cut_price' },
|
||||
{
|
||||
id: 2,
|
||||
step: 1,
|
||||
digits: 2,
|
||||
minNum: 3,
|
||||
maxNum: 100000,
|
||||
defaultNum: 3,
|
||||
returnZero: true,
|
||||
title: '散剪',
|
||||
unit: '米',
|
||||
eunit: 'kg',
|
||||
priceField: 'weight_cut_price',
|
||||
},
|
||||
])
|
||||
const [selectIndex, setSelectIndex] = useState(0)
|
||||
const selectProduct = (index: number) => {
|
||||
@ -246,6 +258,7 @@ export default memo(({ show = false, onClose, title = '', productId = 0 }: param
|
||||
unit={selectList[selectIndex].unit}
|
||||
minNum={selectList[selectIndex].minNum}
|
||||
maxNum={selectList[selectIndex].maxNum}
|
||||
returnZero={selectList[selectIndex].returnZero}
|
||||
/>
|
||||
</View>
|
||||
)}
|
||||
|
||||
@ -5,26 +5,23 @@ import classnames from 'classnames'
|
||||
|
||||
type Param = {
|
||||
list: { id: number; name: string }[]
|
||||
defaultId?: number | null
|
||||
defaultId?: number
|
||||
onSelect?: (val: number) => void
|
||||
}
|
||||
export default memo(({ list = [], defaultId = null, onSelect }: Param) => {
|
||||
export default memo(({ list = [], defaultId = -1, onSelect }: Param) => {
|
||||
const [selectInfo, setSelectInfo] = useState({
|
||||
selected: -1, //当前选中的id
|
||||
tabId: '', //需要滚动到的id
|
||||
})
|
||||
useEffect(() => {
|
||||
if (defaultId) {
|
||||
console.log('defaultId:::', defaultId)
|
||||
const index = list?.findIndex((item) => {
|
||||
return item.id == defaultId
|
||||
})
|
||||
if (index !== -1) {
|
||||
const num = index > 0 ? index - 1 : 0
|
||||
setSelectInfo((e) => ({ ...e, tabId: list[num].id.toString() }))
|
||||
}
|
||||
const index = list?.findIndex((item) => {
|
||||
return item.id == defaultId
|
||||
})
|
||||
if (index !== -1) {
|
||||
const num = index > 0 ? index - 1 : 0
|
||||
setSelectInfo((e) => ({ ...e, tabId: list[num].id.toString() }))
|
||||
}
|
||||
setSelectInfo((e) => ({ ...e, selected: defaultId || -1 }))
|
||||
setSelectInfo((e) => ({ ...e, selected: defaultId }))
|
||||
}, [defaultId])
|
||||
const clickEvent = ({ item, index }: { item: any; index: number }) => {
|
||||
const num = index > 0 ? index - 1 : 0
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import Search from '@/components/search'
|
||||
import useLogin from '@/use/useLogin'
|
||||
import { View } from '@tarojs/components'
|
||||
import Taro, { useDidShow, useRouter } from '@tarojs/taro'
|
||||
import Taro, { useDidHide, useDidShow, useRouter, useUnload } from '@tarojs/taro'
|
||||
import { useCallback, useEffect, useMemo, useRef, useState } from 'react'
|
||||
import styles from './index.module.scss'
|
||||
import Order from './components/order'
|
||||
@ -30,7 +30,12 @@ export default () => {
|
||||
} else {
|
||||
setSearchField((e) => ({ ...e, status: -1 }))
|
||||
}
|
||||
}, [router])
|
||||
getOrderStatusList()
|
||||
}, [])
|
||||
|
||||
useDidHide(() => {
|
||||
setSearchField((e) => ({ ...e, status: -1 }))
|
||||
})
|
||||
|
||||
//搜索参数
|
||||
const [searchField, setSearchField] = useState<{ status: number | null; page: number; size: number; name: string }>({
|
||||
@ -42,14 +47,11 @@ export default () => {
|
||||
|
||||
//获取订单状态
|
||||
const { fetchData: orderStatusListFetchData } = OrderStatusListApi()
|
||||
const [statusList, setStatusList] = useState<any[]>([{ id: -1, name: '全部' }])
|
||||
const [statusList, setStatusList] = useState<any[]>([])
|
||||
const getOrderStatusList = async () => {
|
||||
let res = await orderStatusListFetchData()
|
||||
setStatusList((e) => [...e, ...res.data.list])
|
||||
setStatusList(() => [{ id: -1, name: '全部' }, ...res.data.list])
|
||||
}
|
||||
useEffect(() => {
|
||||
getOrderStatusList()
|
||||
}, [])
|
||||
|
||||
//获取订单列表
|
||||
const { fetchData: listFetchData, state: orderState } = GetOrderListApi()
|
||||
@ -139,10 +141,10 @@ export default () => {
|
||||
setPayMentShow(() => false)
|
||||
}, [])
|
||||
//支付成功
|
||||
const onPaySuccess = useCallback(() => {
|
||||
const onPaySuccess = () => {
|
||||
getOrderList()
|
||||
closePayShow()
|
||||
}, [])
|
||||
}
|
||||
|
||||
//添加购物车
|
||||
const [showCart, setShowCart] = useState(false)
|
||||
@ -200,7 +202,7 @@ export default () => {
|
||||
<View className={styles.order_list_main}>
|
||||
<View className={styles.title}>
|
||||
<Search placeIcon='out' placeholder='搜索商品/名称/颜色/订单号' showBtn={true} changeOnSearch={getSearchData} debounceTime={300} />
|
||||
<OrderStatusList list={statusList} onSelect={changeStatus} defaultId={router?.params.status as unknown as number} />
|
||||
<OrderStatusList list={statusList} onSelect={changeStatus} defaultId={searchField.status as unknown as number} />
|
||||
</View>
|
||||
<View className={styles.order_list}>
|
||||
<InfiniteScroll
|
||||
|
||||
@ -34,14 +34,11 @@ type ListParam = {
|
||||
}
|
||||
export default memo(({ show = true, onClose, orderInfo }: Param) => {
|
||||
const [detail, setDetail] = useState<any>()
|
||||
|
||||
useEffect(() => {
|
||||
console.log('detail:::', detail)
|
||||
if (show && detail) {
|
||||
getCore()
|
||||
}
|
||||
}, [show, detail])
|
||||
|
||||
const product_list = useMemo(() => {
|
||||
return orderInfo?.is_quality_check ? orderInfo?.quality_check_pass_product : orderInfo?.product_list
|
||||
}, [orderInfo])
|
||||
|
||||
@ -34,6 +34,9 @@ type Param = {
|
||||
accessory_url: string[] //物流图片
|
||||
take_goods_remark: string //物流备注
|
||||
quality_check_pass_product: any[]
|
||||
quality_check_pass_number: number
|
||||
quality_check_pass_fabrics: number
|
||||
quality_check_pass_colors: number
|
||||
}
|
||||
onClickBtn?: (val: { status: number; orderInfo: Param['value'] }) => void
|
||||
}
|
||||
@ -77,8 +80,15 @@ export default memo(({ value, onClickBtn }: Param) => {
|
||||
} = REFUND_STATUS_ORDER
|
||||
|
||||
const numText = useMemo(() => {
|
||||
let total_number_new = value?.sale_mode == 0 ? value?.total_number : value?.total_number / 100
|
||||
return `${value?.total_fabrics} 种面料,${value?.total_colors} 种颜色,共 ${total_number_new}${value?.sale_mode == 0 ? ' 条' : ' 米'}`
|
||||
if (!value?.is_quality_check) {
|
||||
let total_number_new = value?.sale_mode == 0 ? value?.total_number : value?.total_number / 100
|
||||
return `${value?.total_fabrics} 种面料,${value?.total_colors} 种颜色,共 ${total_number_new}${value?.sale_mode == 0 ? ' 条' : ' 米'}`
|
||||
} else {
|
||||
let total_number_new = value?.sale_mode == 0 ? value?.quality_check_pass_number : value?.quality_check_pass_number / 100
|
||||
return `${value?.quality_check_pass_fabrics} 种面料,${value?.quality_check_pass_colors} 种颜色,共 ${total_number_new}${
|
||||
value?.sale_mode == 0 ? ' 条' : ' 米'
|
||||
}`
|
||||
}
|
||||
}, [value])
|
||||
|
||||
//售后单状态
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user