🌈 style(eslint): 修复eslint的报错❌
This commit is contained in:
@@ -7,7 +7,7 @@ import MCheckbox from '@/components/checkbox'
|
||||
import Counter from '@/components/counter'
|
||||
import LabAndImg from '@/components/LabAndImg'
|
||||
import { formatHashTag, formatImgUrl, formatPriceDiv } from '@/common/fotmat'
|
||||
import type { saleModeType } from '@/common/enum'
|
||||
import type { saleModeType } from '@/common/enum'
|
||||
|
||||
interface param {
|
||||
sale_model: saleModeType
|
||||
@@ -15,8 +15,7 @@ interface param {
|
||||
onChangeCount: (val: any) => any
|
||||
item: any
|
||||
}
|
||||
|
||||
export default memo((props: param) => {
|
||||
const ProductItem = (props: param) => {
|
||||
const { onChangeCount, onChangeSelect, item, sale_model } = props
|
||||
|
||||
const selectCallBack = useCallback(() => {
|
||||
@@ -99,4 +98,5 @@ export default memo((props: param) => {
|
||||
</View>
|
||||
</View>
|
||||
)
|
||||
})
|
||||
}
|
||||
export default memo(ProductItem)
|
||||
|
||||
@@ -25,7 +25,7 @@ interface param {
|
||||
intoStatus?: 'again' | 'shop'
|
||||
default_sale_mode?: number // 面料类型(0:大货, 1:剪版,2:散剪
|
||||
}
|
||||
export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode }: param) => {
|
||||
const ShowCartCopy = ({ show = false, onClose, intoStatus = 'shop', default_sale_mode }: param) => {
|
||||
const selectList = [
|
||||
{ value: 0, title: '大货', unit: '条', eunit: 'kg', step: 1, digits: 0, minNum: 1, maxNum: 100000, defaultNum: 1 },
|
||||
{ value: 1, title: '剪板', unit: '米', eunit: 'm', step: 1, digits: 2, minNum: 0.5, maxNum: 9.99, defaultNum: 1 },
|
||||
@@ -56,7 +56,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
list?.map((item) => {
|
||||
if (selectIndex == item.sale_mode || selectIndex == -1) {
|
||||
checkboxData[item.id] = true
|
||||
}
|
||||
}
|
||||
else {
|
||||
checkboxData[item.id] = false
|
||||
}
|
||||
@@ -95,7 +95,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
if (!show) {
|
||||
setList([])
|
||||
setSelectIndex(default_sale_mode || 0)
|
||||
}
|
||||
}
|
||||
else {
|
||||
setLoading(true)
|
||||
initStatus.current = true
|
||||
@@ -174,14 +174,14 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
title: '成功',
|
||||
icon: 'success',
|
||||
})
|
||||
}
|
||||
}
|
||||
else {
|
||||
Taro.showToast({
|
||||
title: res.msg,
|
||||
icon: 'none',
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (res.cancel) {
|
||||
console.log('用户点击取消')
|
||||
}
|
||||
@@ -251,14 +251,14 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
getSelectId()
|
||||
if (selectIds.current.length == 0) {
|
||||
alert.error('请选择面料')
|
||||
}
|
||||
}
|
||||
else {
|
||||
const ids = selectIds.current.join('-')
|
||||
setParam({ ids, sale_mode: selectIndex }) // 临时存储
|
||||
closePopup()
|
||||
if (intoStatus == 'again') {
|
||||
goLink('/pages/order/comfirm', {}, 'redirectTo')
|
||||
}
|
||||
}
|
||||
else {
|
||||
goLink('/pages/order/comfirm')
|
||||
}
|
||||
@@ -311,7 +311,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
<View
|
||||
key={item.value}
|
||||
onClick={() => selectProduct(item.value)}
|
||||
className={classnames(styles.search_item, selectIndex == item.value && styles.search_item_select)}
|
||||
className={classnames(styles.search_item, selectIndex == item.value && styles.search_item_select)}
|
||||
>
|
||||
{item.title}
|
||||
</View>
|
||||
@@ -327,7 +327,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
return (
|
||||
<View
|
||||
key={item}
|
||||
className={classnames(styles.product_item, selectIndex != -1 && selectIndex != item.sale_mode && styles.no_product_item_select)}
|
||||
className={classnames(styles.product_item, selectIndex != -1 && selectIndex != item.sale_mode && styles.no_product_item_select)}
|
||||
>
|
||||
<View className={styles.checkbox}>
|
||||
<MCheckbox
|
||||
@@ -416,3 +416,5 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
</View>
|
||||
)
|
||||
}
|
||||
|
||||
export default ShowCartCopy
|
||||
|
||||
@@ -38,7 +38,7 @@ interface modelClassType {
|
||||
defaultNum: number
|
||||
eunit: string
|
||||
}
|
||||
export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode }: param) => {
|
||||
const ShopCart = ({ show = false, onClose, intoStatus = 'shop', default_sale_mode }: param) => {
|
||||
const selectList: modelClassType[] = [
|
||||
{ value: 0, title: '大货', unit: '条', eunit: 'kg', step: 1, digits: 0, minNum: 1, maxNum: 100000, defaultNum: 1 },
|
||||
{ value: 1, title: '剪板', unit: '米', eunit: 'm', step: 1, digits: 2, minNum: 0.5, maxNum: 9.99, defaultNum: 1 },
|
||||
@@ -58,13 +58,6 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
}
|
||||
}, [default_sale_mode])
|
||||
|
||||
useEffect(() => {
|
||||
startTransition(() => {
|
||||
resetList()
|
||||
setSelectStatus(true)
|
||||
})
|
||||
}, [selectIndex])
|
||||
|
||||
// 获取购物车数据数量
|
||||
const { getShopCount } = useCommonData()
|
||||
|
||||
@@ -72,12 +65,6 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
const [list, setList] = useState<Record<number, any>>({})
|
||||
const [loading, setLoading] = useState(false)
|
||||
const { fetchData: getShoppingFetchData } = GetShoppingCartApi()
|
||||
const getShoppingCart = async() => {
|
||||
const { data } = await getShoppingFetchData()
|
||||
const color_list = data.color_list || []
|
||||
initList(color_list)
|
||||
setLoading(false)
|
||||
}
|
||||
|
||||
// 更新单条数据
|
||||
const getShoppingCartInfo = async(item) => {
|
||||
@@ -106,7 +93,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
// 初始化全部数据默认勾选
|
||||
const initList = (color_list) => {
|
||||
const obj = {}
|
||||
color_list?.map((item) => {
|
||||
color_list?.forEach((item) => {
|
||||
item.selected = selectIndex == item.sale_mode
|
||||
const { unit, eunit, step, digits, minNum, maxNum } = selectList[item.sale_mode]
|
||||
item = { ...item, unit, eunit, step, digits, minNum, maxNum }
|
||||
@@ -114,13 +101,18 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
})
|
||||
setList(() => ({ ...obj }))
|
||||
}
|
||||
|
||||
const getShoppingCart = async() => {
|
||||
const { data } = await getShoppingFetchData()
|
||||
const color_list = data.color_list || []
|
||||
initList(color_list)
|
||||
setLoading(false)
|
||||
}
|
||||
// 重置勾选数据
|
||||
const resetList = () => {
|
||||
Object.values(list)?.map((item) => {
|
||||
Object.values(list)?.forEach((item) => {
|
||||
if (selectIndex == item.sale_mode) {
|
||||
item.selected = true
|
||||
}
|
||||
}
|
||||
else {
|
||||
item.selected = false
|
||||
}
|
||||
@@ -129,12 +121,14 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
setList(() => ({ ...list }))
|
||||
}
|
||||
|
||||
// 绑定业务员和电话号码
|
||||
const [showBindSalesman, setShowBindSalesman] = useState(false)
|
||||
// 显示时展示数据
|
||||
useEffect(() => {
|
||||
if (!show) {
|
||||
setList({})
|
||||
setSelectIndex(default_sale_mode || 0)
|
||||
}
|
||||
}
|
||||
else {
|
||||
setLoading(true)
|
||||
getShoppingCart()
|
||||
@@ -150,7 +144,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
// 全选反选
|
||||
const [selectStatus, setSelectStatus] = useState(false)
|
||||
const selectAll = () => {
|
||||
Object.values(list)?.map((item) => {
|
||||
Object.values(list)?.forEach((item) => {
|
||||
if (selectIndex == item.sale_mode) {
|
||||
item.selected = !selectStatus
|
||||
list[item.id] = { ...item }
|
||||
@@ -164,7 +158,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
useEffect(() => {
|
||||
let list_count = 0
|
||||
let select_count = 0
|
||||
Object.values(list)?.map((item) => {
|
||||
Object.values(list)?.forEach((item) => {
|
||||
if (selectIndex == item.sale_mode) {
|
||||
list_count++
|
||||
if (item.selected) { select_count++ }
|
||||
@@ -172,7 +166,18 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
})
|
||||
setSelectStatus(select_count == list_count)
|
||||
}, [list])
|
||||
|
||||
// 计数组件-当后端修改完成才修改前端显示
|
||||
const { fetchData: fetchDataUpdateShoppingCart } = UpdateShoppingCartApi()
|
||||
const getInputValue = debounce(async(item) => {
|
||||
const res = await fetchDataUpdateShoppingCart({ id: item.id, roll: item.roll, length: item.length })
|
||||
if (res.success) {
|
||||
console.log('item修改::', item)
|
||||
getShoppingCartInfo(item)
|
||||
}
|
||||
else {
|
||||
setList(e => ({ ...e }))
|
||||
}
|
||||
}, 300)
|
||||
// 修改数量
|
||||
const onChangeCount = useCallback((item) => {
|
||||
getInputValue(item)
|
||||
@@ -188,7 +193,16 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
onClose?.()
|
||||
setShowPopup(false)
|
||||
}
|
||||
|
||||
// 获取面料选中的id
|
||||
const selectIds = useRef<number[]>([])
|
||||
const getSelectId = () => {
|
||||
selectIds.current = []
|
||||
Object.values(list)?.forEach((item) => {
|
||||
if (selectIndex == item.sale_mode) {
|
||||
item.selected && selectIds.current.push(item.id)
|
||||
}
|
||||
})
|
||||
}
|
||||
// 删除购物车内容
|
||||
const { fetchData: delShopFetchData } = DelShoppingCartApi()
|
||||
const delSelect = () => {
|
||||
@@ -206,14 +220,14 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
title: '成功',
|
||||
icon: 'success',
|
||||
})
|
||||
}
|
||||
}
|
||||
else {
|
||||
Taro.showToast({
|
||||
title: res.msg,
|
||||
icon: 'none',
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (res.cancel) {
|
||||
console.log('用户点击取消')
|
||||
}
|
||||
@@ -221,24 +235,13 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
})
|
||||
}
|
||||
|
||||
// 获取面料选中的id
|
||||
const selectIds = useRef<number[]>([])
|
||||
const getSelectId = () => {
|
||||
selectIds.current = []
|
||||
Object.values(list)?.map((item) => {
|
||||
if (selectIndex == item.sale_mode) {
|
||||
item.selected && selectIds.current.push(item.id)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// 预估金额和总条数
|
||||
const estimatePrice = useMemo(() => {
|
||||
let estimate_amount = 0
|
||||
const product_list = new Set() // 面料
|
||||
let color_count = 0 // 颜色数量
|
||||
let all_count = 0 // 总数量
|
||||
Object.values(list)?.map((item) => {
|
||||
Object.values(list)?.forEach((item) => {
|
||||
if (item.selected) {
|
||||
estimate_amount += item.estimate_amount
|
||||
product_list.add(item.product_id)
|
||||
@@ -256,10 +259,10 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
}, [list])
|
||||
|
||||
// 去结算
|
||||
const { fetchData: useFetchData } = GetAdminUserInfoApi()
|
||||
const { fetchData: FetchData } = GetAdminUserInfoApi()
|
||||
const { fetchData: applyOrderAccessFetchData } = ApplyOrderAccessApi()
|
||||
const orderDetail = throttle(async() => {
|
||||
const res = await useFetchData()
|
||||
const res = await FetchData()
|
||||
if (res.data.order_access_status !== 3) {
|
||||
if (res.data.order_access_status == 1) { applyOrderAccessFetchData() }
|
||||
setShowBindSalesman(() => true)
|
||||
@@ -269,36 +272,20 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
getSelectId()
|
||||
if (selectIds.current.length == 0) {
|
||||
alert.error('请选择面料')
|
||||
}
|
||||
}
|
||||
else {
|
||||
const ids = selectIds.current.join('-')
|
||||
setParam({ ids, sale_mode: selectIndex }) // 临时存储
|
||||
closePopup()
|
||||
if (intoStatus == 'again') {
|
||||
goLink('/pages/order/comfirm', null, 'redirectTo')
|
||||
}
|
||||
}
|
||||
else {
|
||||
goLink('/pages/order/comfirm')
|
||||
}
|
||||
}
|
||||
}, 500)
|
||||
|
||||
// 计数组件-当后端修改完成才修改前端显示
|
||||
const { fetchData: fetchDataUpdateShoppingCart } = UpdateShoppingCartApi()
|
||||
const getInputValue = debounce(async(item) => {
|
||||
const res = await fetchDataUpdateShoppingCart({ id: item.id, roll: item.roll, length: item.length })
|
||||
if (res.success) {
|
||||
console.log('item修改::', item)
|
||||
getShoppingCartInfo(item)
|
||||
}
|
||||
else {
|
||||
setList(e => ({ ...e }))
|
||||
}
|
||||
}, 300)
|
||||
|
||||
// 绑定业务员和电话号码
|
||||
const [showBindSalesman, setShowBindSalesman] = useState(false)
|
||||
|
||||
// 显示图片弹窗
|
||||
const [showLabImage, setShowLabImage] = useState(false)
|
||||
const [labImageValue, setLabImageValue] = useState()
|
||||
@@ -314,7 +301,12 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
onClose?.()
|
||||
goLink('/pages/index/index', null, 'switchTab')
|
||||
}, [])
|
||||
|
||||
useEffect(() => {
|
||||
startTransition(() => {
|
||||
resetList()
|
||||
setSelectStatus(true)
|
||||
})
|
||||
}, [selectIndex])
|
||||
return (
|
||||
<View className={styles.shop_cart_main}>
|
||||
<Popup showTitle={false} show={showPopup} onClose={() => closePopup()}>
|
||||
@@ -333,7 +325,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
<View
|
||||
key={item.value}
|
||||
onClick={() => selectProduct(item.value)}
|
||||
className={classnames(styles.search_item, selectIndex == item.value && styles.search_item_select)}
|
||||
className={classnames(styles.search_item, selectIndex == item.value && styles.search_item_select)}
|
||||
>
|
||||
{item.title}
|
||||
</View>
|
||||
@@ -346,7 +338,7 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
<InfiniteScroll moreStatus={false}>
|
||||
<View className={styles.product_list}>
|
||||
{listData?.map((item) => {
|
||||
return <ProductItem sale_model={selectIndex} onChangeCount={onChangeCount} onChangeSelect={onChangeSelect} item={item} />
|
||||
return <ProductItem key={item.id} sale_model={selectIndex} onChangeCount={onChangeCount} onChangeSelect={onChangeSelect} item={item} />
|
||||
})}
|
||||
</View>
|
||||
</InfiniteScroll>
|
||||
@@ -388,3 +380,4 @@ export default ({ show = false, onClose, intoStatus = 'shop', default_sale_mode
|
||||
</View>
|
||||
)
|
||||
}
|
||||
export default ShopCart
|
||||
|
||||
Reference in New Issue
Block a user