bk-shop/src/doc/community.js

272 lines
7.0 KiB
JavaScript
Executable File

import Big from 'big.js'
import { pickBy, calcTimer } from '@/utils'
import { AFTER_SALE_STATUS } from '@/consts'
export const COMMUNITY_ORDER_LIST = {
orderId: 'order_id',
orderStatus: 'order_status',
orderStatusMsg: 'order_status_msg',
items: 'items',
remark: 'remark',
receiver_name: 'receiver_name',
receiver_mobile: 'receiver_mobile',
receiver_state: 'receiver_state',
receiver_city: 'receiver_city',
receiver_district: 'receiver_district',
receiver_address: 'receiver_address',
receiver_type: 'receiver_type',
memberInfo: 'member',
communityInfo: 'community_info',
createDate: 'create_date',
totalNum: 'total_num',
buildingNumber: 'building_number',
houseNumber: 'house_number',
payStatus: 'pay_status',
isLogistics: 'is_logistics',
canApplyCancel: 'can_apply_cancel',
orderStatusDes: 'order_status_des',
status: 'status',
orderType: 'order_type',
payType: 'pay_type',
totalFee: 'total_fee',
activityId: 'activity_id',
canApplyAftersales: 'can_apply_aftersales',
autoCancelSeconds: ({ auto_cancel_seconds }) => {
if (auto_cancel_seconds > 0) {
return calcTimer(auto_cancel_seconds)
} else {
return 0
}
},
items: ({ items }) => {
if (!items) {
return []
} else {
return pickBy(items, {
orderId: 'order_id',
itemName: 'item_name',
price: ({ price }) => (price / 100).toFixed(2),
// total_fee: 'total_fee',
itemSpecDesc: 'item_spec_desc',
num: 'num',
zitiName: 'ziti_name',
pic: 'pic'
})
}
}
}
export const COMMUNITY_ACTIVITY_ITEM = {
activityIntro: ({ activity_intro }) => {
return JSON.parse(activity_intro)
},
activityPics: ({ activity_pics }) => {
return JSON.parse(activity_pics)
},
orders: 'orders',
activityStatus: 'activity_status',
showBuy: 'show_buy',
buttons: 'buttons',
activityName: 'activity_name',
activityId: 'activity_id',
chiefInfo: 'chief_info',
chiefId: 'chief_id',
isActivityAuthor: 'is_activity_author',
startTime: 'start_time',
endTime: 'end_time',
distributorId: 'distributor_id',
shareImageUrl: 'share_image_url',
showChiefGoodsList: ({ show_chief_goodslist }) => {
if(typeof show_chief_goodslist == 'undefined') {
return 1
} else {
return show_chief_goodslist
}
},
items: ({ items }) => {
return pickBy(items, {
itemId: 'itemId',
pic: 'pics[0]',
itemName: 'item_name',
store: 'store',
distributorId: 'distributor_id',
price: ({ price }) => (price / 100).toFixed(2),
num: 0,
buyNum: 'buy_num',
minDeliveryNum: 'min_delivery_num',
nospec: 'nospec',
specItems: ({ spec_items }) => {
return pickBy(spec_items, {
pic: 'pics[0]',
itemId: 'item_id',
itemName: 'item_name',
itemSpecDesc: 'item_spec_desc',
price: ({ price }) => (price / 100).toFixed(2),
num: 0
})
},
})
},
ziti: ({ ziti }) => {
return pickBy(ziti, {
area: ({ province, city, area }) => {
return `${province} ${city} ${area}`
},
zitiName: 'ziti_name',
province: 'province',
city: 'city',
country: 'area',
address: 'address'
})
},
showCondition: ({ condition_type }) => condition_type == 'money',
progressValue: ({ condition_money, total_fee }) => {
const totalFee = total_fee / 100
return totalFee >= condition_money ? 100 : totalFee / condition_money * 100
},
diffCondition: ({ condition_money, total_fee }) => {
const totalFee = total_fee / 100
return totalFee >= condition_money ? 0 : new Big(condition_money).minus(totalFee).toNumber()
},
totalFee: 'total_fee',
conditionMoney: 'condition_money',
conditionType: "condition_type"
}
export const COMMUNITY_ACTIVITY_DETAIL_ITEM = {
chiefInfo: 'chief_info',
activityIntro: ({ activity_intro }) => {
return JSON.parse(activity_intro)
},
activityPics: ({ activity_pics }) => {
return JSON.parse(activity_pics)
},
activityName: 'activity_name',
activityId: 'activity_id',
items: ({ items }) => {
return pickBy(items, {
itemId: 'itemId',
pic: 'pics[0]',
itemName: 'item_name',
store: 'store',
price: ({ price }) => (price / 100).toFixed(2)
})
},
ziti: ({ ziti }) => {
return pickBy(ziti, {
area: ({ province, city, area }) => {
return `${province} ${city} ${area}`
},
zitiName: 'ziti_name',
province: 'province',
city: 'city',
country: 'area',
address: 'address'
})
}
}
export const COMMUNITY_ACTIVITY_LIST = {
activityId: 'activity_id',
chiefId: 'chief_id',
activityName: 'activity_name',
activityStatus: 'activity_status',
activityStatusMsg: 'activity_status_msg',
activityDeliveryStatusMsg: 'activity_delivery_status_msg',
startTime: 'start_time',
priceRange: 'price_range',
deliveryStatus: 'delivery_status',
saveTime: 'save_time',
orderNum: 'order_num',
userNum: 'user_num',
totalFee: 'total_fee',
canWriteoff: 'can_writeoff',
items: ({ items }) => {
if (!items) {
return []
} else {
return pickBy(items, {
itemId: 'item_id',
itemName: 'item_name',
itemPics: 'item_pics',
pics: ({ pics }) => pics[0]
})
}
}
}
export const COMMUNITY_ZITI = {
id: 'ziti_id',
area: ({ province, city, area }) => {
return `${province} ${city} ${area}`
},
zitiName: 'ziti_name',
province: 'province',
city: 'city',
country: 'area',
address: 'address'
}
export const COMMUNITY_GOODS_ITEM = {
itemId: 'item_id',
pic: 'pics[0]',
itemName: 'item_name',
store: 'store',
price: ({ price }) => (price / 100).toFixed(2),
distributorId: 'distributor_id',
itemSpecDesc: 'item_spec_desc',
nospec: 'nospec',
minDeliveryNum: 'min_delivery_num'
}
export const COMMUNITY_AFTER_SALE_ITEM = {
id: 'aftersales_bn',
status_desc: ({ aftersales_status }) => AFTER_SALE_STATUS[aftersales_status],
totalItems: 'num',
payment: ({ refund_fee }) => (refund_fee / 100).toFixed(2),
pay_type: 'pay_type',
point: 'point',
distributor_info: 'distributor_info',
order: ({ detail }) =>
pickBy(detail, {
order_id: 'order_id',
item_id: 'item_id',
pic_path: 'item_pic',
title: 'item_name',
price: ({ refund_fee }) => (+refund_fee / 100).toFixed(2),
point: 'item_point',
num: 'num'
})
}
export const COMMUNITY_CHECKOUT_RES = {
items: ({ items }) => {
return pickBy(items, {
pic: 'pic',
itemName: 'item_name',
price: ({ price }) => (price / 100).toFixed(2),
num: 'num',
itemSpecDesc: 'item_spec_desc'
})
},
totalFee: ({ total_fee }) => (total_fee / 100).toFixed(2),
totalItemNum: 'totalItemNum'
}
export const GOOD_LIST = {
pic: ({ pics }) => pics[0],
name: 'itemName',
no: 'itemBn',
store: 'store',
price: 'price',
approve_status: 'approve_status',
goods_id: 'goods_id',
audit_status: 'audit_status',
item_id: 'item_id',
itemBn: 'itemBn',
itemBoxNum: 'item_box_num',
itemPieceNum: 'item_piece_num',
unitScale: 'unit_scale'
}