Commit 5c0a7573 authored by 孙 楠's avatar 孙 楠

add more i18n messages

parent 2cc20476
...@@ -82,7 +82,7 @@ const ImportListModal = props => { ...@@ -82,7 +82,7 @@ const ImportListModal = props => {
<div className={styles.pagewrapper}> <div className={styles.pagewrapper}>
<Pagination <Pagination
total={total} total={total}
showTotal={e => `总共 ${e} 条数据`} showTotal={e => `${$t('total')}${e}${$t('data.records')}`}
pageSize={pageInfo.pageSize} pageSize={pageInfo.pageSize}
defaultCurrent={pageInfo.pageNo} defaultCurrent={pageInfo.pageNo}
onChange={onChangePage} onChange={onChangePage}
......
...@@ -316,7 +316,7 @@ const Complex = props => { ...@@ -316,7 +316,7 @@ const Complex = props => {
<Pagination <Pagination
onChange={onPageChange} onChange={onPageChange}
total={dataTotal} total={dataTotal}
showTotal={(total, range) => `第${range[0]}-${range[1]}条 /总共${total}条`} showTotal={(total, range) => `${$t('no')}${range[0]}-${range[1]}${$t('entries.total')}${total}${$t('entries')}`}
showSizeChanger showSizeChanger
pageSize={queryParams.pageSize} pageSize={queryParams.pageSize}
current={queryParams.pageNo} current={queryParams.pageNo}
......
...@@ -103,14 +103,14 @@ const UploadImage = forwardRef((props, ref) => { ...@@ -103,14 +103,14 @@ const UploadImage = forwardRef((props, ref) => {
if (!canUploadFile && !accept.includes(curType)) { if (!canUploadFile && !accept.includes(curType)) {
notification.open({ notification.open({
message: file.name, message: file.name,
description: `文件格式须为${accept.join('')}!`, description: `${$t('file.format.must.be')}${accept.join('')}!`,
}); });
return resolve(null); return resolve(null);
} }
if (file.size > MAX_FILE_SIZE * UNIT) { if (file.size > MAX_FILE_SIZE * UNIT) {
notification.open({ notification.open({
message: file.name, message: file.name,
description: `单个文件大小不能超过${MAX_FILE_SIZE}M!`, description: `${$t('single.file.size.cannot.exceed')}${MAX_FILE_SIZE}M!`,
}); });
return resolve(null); return resolve(null);
} }
......
...@@ -29,7 +29,7 @@ export const checkConfirm = () => { ...@@ -29,7 +29,7 @@ export const checkConfirm = () => {
confirm({ confirm({
title: $t('risk.warning'), title: $t('risk.warning'),
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确定关闭${mt}餐品类型?此餐品类型下关联的商户及商品将一并删除,不可逆请谨慎操作!`, content: `${$t('confirm.close')}${mt}${$t('delete.food.type.associated.merchantsproducts.will.be.permanently.deleted')}`,
onOk() { onOk() {
resolve(1); resolve(1);
}, },
......
...@@ -25,7 +25,7 @@ const MealLimitsFormList = (meals, selectedMealTypes) => ( ...@@ -25,7 +25,7 @@ const MealLimitsFormList = (meals, selectedMealTypes) => (
</Col> </Col>
<Col span={24}> <Col span={24}>
<Form.Item <Form.Item
label={`${mealSections[meal]}订单`} label={`${mealSections[meal]}${$t('order')}`}
required required
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
wrapperCol={{ span: 20 }} wrapperCol={{ span: 20 }}
......
...@@ -5,13 +5,13 @@ import { validateRequired, isCheckPriceTwoDecimal } from '@/utils/validator'; ...@@ -5,13 +5,13 @@ import { validateRequired, isCheckPriceTwoDecimal } from '@/utils/validator';
const MealLimit = props => ( const MealLimit = props => (
// console.log('props :>> ', props); // console.log('props :>> ', props);
<Form.Item <Form.Item
label={`${props.label}限额`} label={`${props.label}${$t('quota')}`}
name={props.name} name={props.name}
initialValue={props.value} initialValue={props.value}
labelCol={{ span: 10 }} labelCol={{ span: 10 }}
wrapperCol={{ span: 14 }} wrapperCol={{ span: 14 }}
rules={[ rules={[
{ validator: validateRequired, message: `请输入${props.label}限额` }, { validator: validateRequired, message: `${$t('please.enter')}${props.label}${$t('quota')}` },
{ validator: isCheckPriceTwoDecimal, message: $t('enter.valid.price') }, { validator: isCheckPriceTwoDecimal, message: $t('enter.valid.price') },
]} ]}
> >
......
export default { export default {
"000000": "00:00:00", "000000": "00:00:00",
"1.decimal.place": "1 decimal place", "1.decimal.place": "1 decimal place",
"1.first.cover.image": "/ 1) First cover image",
"1.modify.with.caution.this.function.is.used.to.update.recipient.info.postshipment.via.offline.logistics": "1. Modify with caution. This function is used to update recipient info post-shipment via offline logistics.", "1.modify.with.caution.this.function.is.used.to.update.recipient.info.postshipment.via.offline.logistics": "1. Modify with caution. This function is used to update recipient info post-shipment via offline logistics.",
"1.only.supports.by.product": "1. Only supports by product", "1.only.supports.by.product": "1. Only supports by product",
"11.digits": "11 digits", "11.digits": "11 digits",
...@@ -156,6 +157,7 @@ export default { ...@@ -156,6 +157,7 @@ export default {
"belonging.category": "Belonging category", "belonging.category": "Belonging category",
"belonging.store": "Belonging store", "belonging.store": "Belonging store",
"bill.date": "Bill date", "bill.date": "Bill date",
"bill.payment.details": "Bill payment details-",
"bill.type": "Bill type", "bill.type": "Bill type",
"billing.cycle": "Billing cycle", "billing.cycle": "Billing cycle",
"block": "Block", "block": "Block",
...@@ -232,7 +234,10 @@ export default { ...@@ -232,7 +234,10 @@ export default {
"config.method": "Config method", "config.method": "Config method",
"config.success": "Config success", "config.success": "Config success",
"confirm": "Confirm", "confirm": "Confirm",
"confirm.close": "Confirm close",
"confirm.delete.employee.0": "Confirm delete employee #{0}",
"confirm.delete.group": "Confirm delete group", "confirm.delete.group": "Confirm delete group",
"confirm.delete.merchant.0": "Confirm delete merchant #{0}",
"confirm.delete.role": "Confirm delete role", "confirm.delete.role": "Confirm delete role",
"confirm.deletion": "Confirm deletion", "confirm.deletion": "Confirm deletion",
"confirm.disable.store": "Confirm disable store", "confirm.disable.store": "Confirm disable store",
...@@ -267,6 +272,7 @@ export default { ...@@ -267,6 +272,7 @@ export default {
"copy": "Copy", "copy": "Copy",
"corporate": "Corporate", "corporate": "Corporate",
"county": "County", "county": "County",
"coupon.code": "Coupon code",
"cover.image": "Cover image", "cover.image": "Cover image",
"create.department": "Create department", "create.department": "Create department",
"create.group": "Create group", "create.group": "Create group",
...@@ -290,12 +296,16 @@ export default { ...@@ -290,12 +296,16 @@ export default {
"daily.min.reception": "Daily min. reception", "daily.min.reception": "Daily min. reception",
"daily.settlement": "Daily settlement", "daily.settlement": "Daily settlement",
"data.deleted.successfully": "Data deleted successfully", "data.deleted.successfully": "Data deleted successfully",
"data.items": "Data items",
"data.records": "Data records",
"data.saved.successfully": "Data saved successfully", "data.saved.successfully": "Data saved successfully",
"deadline": "Deadline",
"debit.card": "Debit card", "debit.card": "Debit card",
"default": "(Default)", "default": "(Default)",
"default.1year.validity": "Default 1-year validity", "default.1year.validity": "Default 1-year validity",
"delete": "Delete", "delete": "Delete",
"delete.failed": "Delete failed", "delete.failed": "Delete failed",
"delete.food.type.associated.merchantsproducts.will.be.permanently.deleted": "Delete food type? Associated merchants/products will be permanently deleted!",
"delete.success": "Delete success", "delete.success": "Delete success",
"deleted": "Deleted", "deleted": "Deleted",
"deleted.successfully": "Deleted successfully!", "deleted.successfully": "Deleted successfully!",
...@@ -318,6 +328,7 @@ export default { ...@@ -318,6 +328,7 @@ export default {
"detail.address.required": "Detail address required", "detail.address.required": "Detail address required",
"detail.image": "Detail image", "detail.image": "Detail image",
"detail.image.width.800": "Detail image width ≤800", "detail.image.width.800": "Detail image width ≤800",
"detail.image.width.exceeds.limit": "] Detail image width exceeds limit",
"detailed.address.excl.region": "Detailed address (excl. region)", "detailed.address.excl.region": "Detailed address (excl. region)",
"dinner": "Dinner", "dinner": "Dinner",
"direct.enterprise.purchase": "Direct enterprise purchase", "direct.enterprise.purchase": "Direct enterprise purchase",
...@@ -510,6 +521,8 @@ export default { ...@@ -510,6 +521,8 @@ export default {
"enterprise.product.price": "Enterprise product price", "enterprise.product.price": "Enterprise product price",
"enterprise.purchase": "Enterprise purchase", "enterprise.purchase": "Enterprise purchase",
"enterprise.type": "Enterprise type", "enterprise.type": "Enterprise type",
"entries": "Entries",
"entries.total": "Entries / Total",
"error.reason": "Error reason:", "error.reason": "Error reason:",
"esignature": "E-signature", "esignature": "E-signature",
"evoucher": "E-voucher", "evoucher": "E-voucher",
...@@ -526,8 +539,10 @@ export default { ...@@ -526,8 +539,10 @@ export default {
"failed.data": "Failed data", "failed.data": "Failed data",
"failed.to.locate.address": "Failed to locate address", "failed.to.locate.address": "Failed to locate address",
"fetch.public.images": "Fetch public images", "fetch.public.images": "Fetch public images",
"file.format.must.be": "File format must be",
"file.upload.failed": "File upload failed", "file.upload.failed": "File upload failed",
"file.upload.success": "File upload success", "file.upload.success": "File upload success",
"files": " files!",
"filter": "Filter", "filter": "Filter",
"fixed.date": "Fixed date", "fixed.date": "Fixed date",
"food.delivery.service": "Food delivery service", "food.delivery.service": "Food delivery service",
...@@ -568,6 +583,7 @@ export default { ...@@ -568,6 +583,7 @@ export default {
"home": "Home", "home": "Home",
"home.delivery": "Home delivery", "home.delivery": "Home delivery",
"homepage": "Homepage", "homepage": "Homepage",
"hours": "Hours",
"household.register.page": "Household register page", "household.register.page": "Household register page",
"id.back": "ID back", "id.back": "ID back",
"id.expiry.end": "ID expiry end", "id.expiry.end": "ID expiry end",
...@@ -578,6 +594,7 @@ export default { ...@@ -578,6 +594,7 @@ export default {
"id.name": "ID name", "id.name": "ID name",
"id.number": "ID number", "id.number": "ID number",
"image.format.must.be.jpgjpegpng": "Image format must be jpg/jpeg/png!", "image.format.must.be.jpgjpegpng": "Image format must be jpg/jpeg/png!",
"image.size.cannot.exceed.2mb": "] Image size cannot exceed 2MB",
"image.upload.failed": "Image upload failed", "image.upload.failed": "Image upload failed",
"import": "Import", "import": "Import",
"import.file": "Import file", "import.file": "Import file",
...@@ -688,9 +705,12 @@ export default { ...@@ -688,9 +705,12 @@ export default {
"max.50.dishes": "Max 50 dishes", "max.50.dishes": "Max 50 dishes",
"max.file.size.200k": "Max file size: 200K", "max.file.size.200k": "Max file size: 200K",
"max.file.size.5m": "Max file size: 5M!", "max.file.size.5m": "Max file size: 5M!",
"max.selectable.billing.cycles": "Max selectable billing cycles",
"max.stock": "Max stock", "max.stock": "Max stock",
"max.stock.cannot.be.0": "Max stock cannot be 0", "max.stock.cannot.be.0": "Max stock cannot be 0",
"max.upload.limit": "Max upload limit",
"maximum": "Maximum", "maximum": "Maximum",
"maximum.upload": "Maximum upload",
"meal.package.content": "Meal package content", "meal.package.content": "Meal package content",
"meal.period.config": "Meal period config", "meal.period.config": "Meal period config",
"meal.type.required": "Meal type required", "meal.type.required": "Meal type required",
...@@ -722,12 +742,14 @@ export default { ...@@ -722,12 +742,14 @@ export default {
"merchant.confirmed": "Merchant confirmed", "merchant.confirmed": "Merchant confirmed",
"merchant.meal.types.at.pickup": "Merchant meal types at pickup", "merchant.meal.types.at.pickup": "Merchant meal types at pickup",
"merchant.name": "Merchant name:", "merchant.name": "Merchant name:",
"merchant.order.list": "Merchant order list-",
"merchant.phone": "Merchant phone", "merchant.phone": "Merchant phone",
"merchant.refund.address": "Merchant refund address", "merchant.refund.address": "Merchant refund address",
"merchant.rejected": "Merchant rejected", "merchant.rejected": "Merchant rejected",
"merchant.rejection.reason": "Merchant rejection reason", "merchant.rejection.reason": "Merchant rejection reason",
"merchant.return.address": "Merchant return address", "merchant.return.address": "Merchant return address",
"merchant.return.info": "Merchant return info", "merchant.return.info": "Merchant return info",
"merchant.settlement.details": "Merchant settlement details-",
"merchant.system": "Merchant system", "merchant.system": "Merchant system",
"merchant.under.review": "Merchant under review", "merchant.under.review": "Merchant under review",
"message": "Message", "message": "Message",
...@@ -782,6 +804,8 @@ export default { ...@@ -782,6 +804,8 @@ export default {
"notice": "Notice", "notice": "Notice",
"notification": "Notification", "notification": "Notification",
"notifications": "Notifications", "notifications": "Notifications",
"number.in.range": "Number in range",
"numbers.between": "] Numbers between",
"numbers.or.commaseparated": "Numbers or comma-separated", "numbers.or.commaseparated": "Numbers or comma-separated",
"numbers.or.hyphens": "Numbers or hyphens", "numbers.or.hyphens": "Numbers or hyphens",
"numbers.or.letters": "Numbers or letters", "numbers.or.letters": "Numbers or letters",
...@@ -851,6 +875,7 @@ export default { ...@@ -851,6 +875,7 @@ export default {
"payment.in.progress.oa.approved": "Payment in progress (OA approved)", "payment.in.progress.oa.approved": "Payment in progress (OA approved)",
"payment.in.progress.oa.processing": "Payment in progress (OA processing)", "payment.in.progress.oa.processing": "Payment in progress (OA processing)",
"payment.in.progress.pending.transfer": "Payment in progress (pending transfer)", "payment.in.progress.pending.transfer": "Payment in progress (pending transfer)",
"payment.order.export.data": "Payment order export data-",
"payment.slip": "Payment slip", "payment.slip": "Payment slip",
"payment.slip.date": "Payment slip date", "payment.slip.date": "Payment slip date",
"payment.slip.start.time.required": "Payment slip start time required", "payment.slip.start.time.required": "Payment slip start time required",
...@@ -904,12 +929,17 @@ export default { ...@@ -904,12 +929,17 @@ export default {
"platform.remark": "Platform remark", "platform.remark": "Platform remark",
"please.check": "Please check", "please.check": "Please check",
"please.configure": "Please configure", "please.configure": "Please configure",
"please.enter": "Please enter [",
"please.select": "Please select",
"please.select.first": "Please select first",
"please.upload": "Please upload",
"pop.merchants.only": "POP merchants only", "pop.merchants.only": "POP merchants only",
"portion": "Portion", "portion": "Portion",
"portion.name.must.be.unique": "Portion name must be unique!", "portion.name.must.be.unique": "Portion name must be unique!",
"portion.size": "Portion size", "portion.size": "Portion size",
"portion.size.eg.largesmall.mildspicy": "Portion size (e.g., large/small, mild/spicy)", "portion.size.eg.largesmall.mildspicy": "Portion size (e.g., large/small, mild/spicy)",
"positive.integer.required": "Positive integer required", "positive.integer.required": "Positive integer required",
"positive.integers.between": "] Positive integers between",
"postchange.content": "Post-change content", "postchange.content": "Post-change content",
"prechange.content": "Pre-change content", "prechange.content": "Pre-change content",
"precise.weight.unit": "Precise weight unit", "precise.weight.unit": "Precise weight unit",
...@@ -925,6 +955,7 @@ export default { ...@@ -925,6 +955,7 @@ export default {
"product.beyond.aftersale.period": "Product beyond after-sale period", "product.beyond.aftersale.period": "Product beyond after-sale period",
"product.brand": "Product brand", "product.brand": "Product brand",
"product.category": "Product category", "product.category": "Product category",
"product.category.changed.weight.unit.autoswitched.to": "Product category changed. Weight unit auto-switched to",
"product.change.review": "Product change review", "product.change.review": "Product change review",
"product.damaged": "Product damaged", "product.damaged": "Product damaged",
"product.description": "Product description", "product.description": "Product description",
...@@ -933,6 +964,7 @@ export default { ...@@ -933,6 +964,7 @@ export default {
"product.id": "Product ID:", "product.id": "Product ID:",
"product.image": "Product image", "product.image": "Product image",
"product.image.only": "Product image only", "product.image.only": "Product image only",
"product.images": "Product images(",
"product.mismatch": "Product mismatch", "product.mismatch": "Product mismatch",
"product.name": "Product name", "product.name": "Product name",
"product.name.2.chars": "Product name (2+ chars)", "product.name.2.chars": "Product name (2+ chars)",
...@@ -964,6 +996,7 @@ export default { ...@@ -964,6 +996,7 @@ export default {
"quantity.star": "Quantity Star", "quantity.star": "Quantity Star",
"quantity.star.merchant.system": "Quantity Star Merchant System", "quantity.star.merchant.system": "Quantity Star Merchant System",
"query": "Query", "query": "Query",
"quota": "Quota",
"read": "Read", "read": "Read",
"reason": "Reason", "reason": "Reason",
"recalled": "Recalled", "recalled": "Recalled",
...@@ -976,8 +1009,11 @@ export default { ...@@ -976,8 +1009,11 @@ export default {
"recipient.info": "Recipient info", "recipient.info": "Recipient info",
"recipient.name": "Recipient name", "recipient.name": "Recipient name",
"recommended.candidate.qu.nini.passed.3rd.interview": "Recommended candidate Qu Nini passed 3rd interview", "recommended.candidate.qu.nini.passed.3rd.interview": "Recommended candidate Qu Nini passed 3rd interview",
"recommended.size.widthheight": "Recommended size: ##width##height (",
"recommended.size.widthheight.sku.carousel": "Recommended size: ##width##height, SKU carousel(",
"reconciled.count": "Reconciled count", "reconciled.count": "Reconciled count",
"reconciliation.batch": "Reconciliation batch", "reconciliation.batch": "Reconciliation batch",
"reconciliation.details": "Reconciliation details-",
"reconciliation.status": "Reconciliation status", "reconciliation.status": "Reconciliation status",
"red.amount": "Red amount", "red.amount": "Red amount",
"reduce.stock": "Reduce stock", "reduce.stock": "Reduce stock",
...@@ -1006,6 +1042,7 @@ export default { ...@@ -1006,6 +1042,7 @@ export default {
"reminder": "Reminder", "reminder": "Reminder",
"reminder.current.aftersales.type.is.product.not.received": "Reminder: Current after-sales type is 'Product not received' - ", "reminder.current.aftersales.type.is.product.not.received": "Reminder: Current after-sales type is 'Product not received' - ",
"request.data.returned.successfully": "Request data returned successfully", "request.data.returned.successfully": "Request data returned successfully",
"request.error": "Request error",
"request.settlement": "Request settlement", "request.settlement": "Request settlement",
"request.targets.nonexistent.record": "Request targets nonexistent record", "request.targets.nonexistent.record": "Request targets nonexistent record",
"required": "Required", "required": "Required",
...@@ -1061,6 +1098,7 @@ export default { ...@@ -1061,6 +1098,7 @@ export default {
"search.for.logistics": "// Search for logistics", "search.for.logistics": "// Search for logistics",
"secondary.menu": "Secondary menu", "secondary.menu": "Secondary menu",
"secondary.specification": "Secondary specification", "secondary.specification": "Secondary specification",
"seconds": "Seconds",
"select": "Select", "select": "Select",
"select.1100.batches": "Select 1-100 batches", "select.1100.batches": "Select 1-100 batches",
"select.account.type": "Select account type", "select.account.type": "Select account type",
...@@ -1136,6 +1174,7 @@ export default { ...@@ -1136,6 +1174,7 @@ export default {
"selected.shipping.zones": "Selected shipping zones", "selected.shipping.zones": "Selected shipping zones",
"selection.required": "Selection required", "selection.required": "Selection required",
"selfoperated": "Self-operated", "selfoperated": "Self-operated",
"selfoperated.product.price.update": "Self-operated product price update-",
"selling.price": "Selling price", "selling.price": "Selling price",
"sentry.failed.to.load": "Sentry failed to load", "sentry.failed.to.load": "Sentry failed to load",
"serial.no": "Serial No.", "serial.no": "Serial No.",
...@@ -1181,6 +1220,7 @@ export default { ...@@ -1181,6 +1220,7 @@ export default {
"sichuan.girl": "Sichuan girl", "sichuan.girl": "Sichuan girl",
"signing.date": "Signing date", "signing.date": "Signing date",
"signing.time": "Signing time", "signing.time": "Signing time",
"single.file.size.cannot.exceed": "Single file size cannot exceed",
"single.item.delivery": "Single item delivery", "single.item.delivery": "Single item delivery",
"single.item.no.delivery": "Single item no delivery", "single.item.no.delivery": "Single item no delivery",
"single.specification": "Single specification", "single.specification": "Single specification",
...@@ -1192,6 +1232,7 @@ export default { ...@@ -1192,6 +1232,7 @@ export default {
"sku.code": "SKU code", "sku.code": "SKU code",
"sku.name": "SKU name", "sku.name": "SKU name",
"sku.product.name": "SKU product name", "sku.product.name": "SKU product name",
"slider.image.size.exceeds.limit": "] Slider image size exceeds limit",
"smallscale": "Small-scale", "smallscale": "Small-scale",
"sold.out": "Sold out", "sold.out": "Sold out",
"sort": "Sort", "sort": "Sort",
...@@ -1203,6 +1244,7 @@ export default { ...@@ -1203,6 +1244,7 @@ export default {
"spicy": "Spicy~", "spicy": "Spicy~",
"spu.name": "SPU name:", "spu.name": "SPU name:",
"start.date": "Start date", "start.date": "Start date",
"start.time.cannot.be.before": "Start time cannot be before",
"startend.time.mismatch": "Start/end time mismatch", "startend.time.mismatch": "Start/end time mismatch",
"status": "Status", "status": "Status",
"stock": "Stock:", "stock": "Stock:",
...@@ -1278,6 +1320,7 @@ export default { ...@@ -1278,6 +1320,7 @@ export default {
"top.up.balance": "Top up balance", "top.up.balance": "Top up balance",
"topup.details": "Top-up details", "topup.details": "Top-up details",
"topup.time": "Top-up time", "topup.time": "Top-up time",
"total": "Total",
"total.refund": "Total refund", "total.refund": "Total refund",
"total.sales": "Total sales", "total.sales": "Total sales",
"town": "Town", "town": "Town",
...@@ -1388,6 +1431,7 @@ export default { ...@@ -1388,6 +1431,7 @@ export default {
"week.preview.required": "Week preview required", "week.preview.required": "Week preview required",
"weekly.preview": "Weekly preview", "weekly.preview": "Weekly preview",
"weekly.settlement": "Weekly settlement", "weekly.settlement": "Weekly settlement",
"weight": "Weight(",
"welcome.to.merchant.system": "Welcome to Merchant System", "welcome.to.merchant.system": "Welcome to Merchant System",
"westore.id": "WeStore ID", "westore.id": "WeStore ID",
"westore.name": "WeStore name", "westore.name": "WeStore name",
......
export default { export default {
"000000": "0时0分0秒", "000000": "0时0分0秒",
"1.decimal.place": "小数点保留1位", "1.decimal.place": "小数点保留1位",
"1.first.cover.image": "/ 1) 封面图第一张",
"1.modify.with.caution.this.function.is.used.to.update.recipient.info.postshipment.via.offline.logistics": "1、请谨慎修改,此功能仅在发货后,线下联系物流公司变更收货信息时填写,系统用于获取物流轨迹", "1.modify.with.caution.this.function.is.used.to.update.recipient.info.postshipment.via.offline.logistics": "1、请谨慎修改,此功能仅在发货后,线下联系物流公司变更收货信息时填写,系统用于获取物流轨迹",
"1.only.supports.by.product": "1、仅支持按商品", "1.only.supports.by.product": "1、仅支持按商品",
"11.digits": "11位数字", "11.digits": "11位数字",
...@@ -156,6 +157,7 @@ export default { ...@@ -156,6 +157,7 @@ export default {
"belonging.category": "所属类目", "belonging.category": "所属类目",
"belonging.store": "所属门店", "belonging.store": "所属门店",
"bill.date": "账单日期", "bill.date": "账单日期",
"bill.payment.details": "账单付款单明细-",
"bill.type": "账单类型", "bill.type": "账单类型",
"billing.cycle": "账期", "billing.cycle": "账期",
"block": "拉黑", "block": "拉黑",
...@@ -232,7 +234,10 @@ export default { ...@@ -232,7 +234,10 @@ export default {
"config.method": "配置方式", "config.method": "配置方式",
"config.success": "配置成功!", "config.success": "配置成功!",
"confirm": "确认", "confirm": "确认",
"confirm.close": "确定关闭",
"confirm.delete.employee.0": "确认删除企业员工#",
"confirm.delete.group": "确定删除该分组吗?", "confirm.delete.group": "确定删除该分组吗?",
"confirm.delete.merchant.0": "确认删除企业商户#",
"confirm.delete.role": "确定删除该角色吗?", "confirm.delete.role": "确定删除该角色吗?",
"confirm.deletion": "确定要删除吗?", "confirm.deletion": "确定要删除吗?",
"confirm.disable.store": "确认要禁用这家门店吗?", "confirm.disable.store": "确认要禁用这家门店吗?",
...@@ -267,6 +272,7 @@ export default { ...@@ -267,6 +272,7 @@ export default {
"copy": "复制", "copy": "复制",
"corporate": "对公", "corporate": "对公",
"county": "", "county": "",
"coupon.code": "券码",
"cover.image": "封面图片", "cover.image": "封面图片",
"create.department": "创建部门", "create.department": "创建部门",
"create.group": "新建分组", "create.group": "新建分组",
...@@ -290,12 +296,16 @@ export default { ...@@ -290,12 +296,16 @@ export default {
"daily.min.reception": "每日最低接待量", "daily.min.reception": "每日最低接待量",
"daily.settlement": "日结", "daily.settlement": "日结",
"data.deleted.successfully": "删除数据成功。", "data.deleted.successfully": "删除数据成功。",
"data.items": "项数据",
"data.records": "条数据",
"data.saved.successfully": "新建或修改数据成功。", "data.saved.successfully": "新建或修改数据成功。",
"deadline": "截止时间",
"debit.card": "借记卡", "debit.card": "借记卡",
"default": "(默认)", "default": "(默认)",
"default.1year.validity": "自商品售卖起默认一年", "default.1year.validity": "自商品售卖起默认一年",
"delete": "删除", "delete": "删除",
"delete.failed": "删除失败", "delete.failed": "删除失败",
"delete.food.type.associated.merchantsproducts.will.be.permanently.deleted": "餐品类型?此餐品类型下关联的商户及商品将一并删除,不可逆请谨慎操作!",
"delete.success": "删除成功", "delete.success": "删除成功",
"deleted": "已删除", "deleted": "已删除",
"deleted.successfully": "删除成功!", "deleted.successfully": "删除成功!",
...@@ -318,6 +328,7 @@ export default { ...@@ -318,6 +328,7 @@ export default {
"detail.address.required": "请输入详情地址!", "detail.address.required": "请输入详情地址!",
"detail.image": "详情图", "detail.image": "详情图",
"detail.image.width.800": "详情图宽度不可大于800", "detail.image.width.800": "详情图宽度不可大于800",
"detail.image.width.exceeds.limit": "] 详情图宽度不可大于",
"detailed.address.excl.region": "请输入详细地址,不包含省市区地址", "detailed.address.excl.region": "请输入详细地址,不包含省市区地址",
"dinner": "晚餐", "dinner": "晚餐",
"direct.enterprise.purchase": "企业购直连", "direct.enterprise.purchase": "企业购直连",
...@@ -510,6 +521,8 @@ export default { ...@@ -510,6 +521,8 @@ export default {
"enterprise.product.price": "企业商品价格", "enterprise.product.price": "企业商品价格",
"enterprise.purchase": "企业购", "enterprise.purchase": "企业购",
"enterprise.type": "企业类型", "enterprise.type": "企业类型",
"entries": "",
"entries.total": "条 /总共",
"error.reason": "异常原因:", "error.reason": "异常原因:",
"esignature": "电子签章", "esignature": "电子签章",
"evoucher": "虚拟卡券", "evoucher": "虚拟卡券",
...@@ -526,8 +539,10 @@ export default { ...@@ -526,8 +539,10 @@ export default {
"failed.data": "失败数据", "failed.data": "失败数据",
"failed.to.locate.address": "根据地址查询位置失败", "failed.to.locate.address": "根据地址查询位置失败",
"fetch.public.images": "拉取公共图", "fetch.public.images": "拉取公共图",
"file.format.must.be": "文件格式须为",
"file.upload.failed": "文件上传失败", "file.upload.failed": "文件上传失败",
"file.upload.success": "文件上传成功", "file.upload.success": "文件上传成功",
"files": "个文件!",
"filter": "筛选", "filter": "筛选",
"fixed.date": "固定日期", "fixed.date": "固定日期",
"food.delivery.service": "到家外卖业务(外卖配送业务)", "food.delivery.service": "到家外卖业务(外卖配送业务)",
...@@ -568,6 +583,7 @@ export default { ...@@ -568,6 +583,7 @@ export default {
"home": "首页", "home": "首页",
"home.delivery": "到家业务", "home.delivery": "到家业务",
"homepage": "主页", "homepage": "主页",
"hours": "",
"household.register.page": "户口本本人页", "household.register.page": "户口本本人页",
"id.back": "身份证国徽面", "id.back": "身份证国徽面",
"id.expiry.end": "身份证结束有效期", "id.expiry.end": "身份证结束有效期",
...@@ -578,6 +594,7 @@ export default { ...@@ -578,6 +594,7 @@ export default {
"id.name": "证件姓名", "id.name": "证件姓名",
"id.number": "身份证号码", "id.number": "身份证号码",
"image.format.must.be.jpgjpegpng": "图片格式须为jpg、jpeg、png!", "image.format.must.be.jpgjpegpng": "图片格式须为jpg、jpeg、png!",
"image.size.cannot.exceed.2mb": "] 图片不可以大于2MB",
"image.upload.failed": "图片上传失败", "image.upload.failed": "图片上传失败",
"import": "导入", "import": "导入",
"import.file": "导入文件", "import.file": "导入文件",
...@@ -688,9 +705,12 @@ export default { ...@@ -688,9 +705,12 @@ export default {
"max.50.dishes": "最多添加50个菜品", "max.50.dishes": "最多添加50个菜品",
"max.file.size.200k": "文件大小不能超过200K", "max.file.size.200k": "文件大小不能超过200K",
"max.file.size.5m": "文件大小不能超过5M!", "max.file.size.5m": "文件大小不能超过5M!",
"max.selectable.billing.cycles": "帐期最多可选",
"max.stock": "最大库存", "max.stock": "最大库存",
"max.stock.cannot.be.0": "最大库存不能为0", "max.stock.cannot.be.0": "最大库存不能为0",
"max.upload.limit": "最多只能上传",
"maximum": "最大", "maximum": "最大",
"maximum.upload": "最多上传",
"meal.package.content": "套餐内容", "meal.package.content": "套餐内容",
"meal.period.config": "餐段配置", "meal.period.config": "餐段配置",
"meal.type.required": "请选择餐品类型!", "meal.type.required": "请选择餐品类型!",
...@@ -722,12 +742,14 @@ export default { ...@@ -722,12 +742,14 @@ export default {
"merchant.confirmed": "商家已确认", "merchant.confirmed": "商家已确认",
"merchant.meal.types.at.pickup": "取餐点下商户餐品类型", "merchant.meal.types.at.pickup": "取餐点下商户餐品类型",
"merchant.name": "商家名称:", "merchant.name": "商家名称:",
"merchant.order.list": "商户订单列表-",
"merchant.phone": "商家手机号", "merchant.phone": "商家手机号",
"merchant.refund.address": "商家退款地址", "merchant.refund.address": "商家退款地址",
"merchant.rejected": "商家已拒绝", "merchant.rejected": "商家已拒绝",
"merchant.rejection.reason": "商家拒绝原因", "merchant.rejection.reason": "商家拒绝原因",
"merchant.return.address": "商家退货地址", "merchant.return.address": "商家退货地址",
"merchant.return.info": "商家退货信息", "merchant.return.info": "商家退货信息",
"merchant.settlement.details": "商户货款结算明细-",
"merchant.system": "商户管理系统", "merchant.system": "商户管理系统",
"merchant.under.review": "商户审核中", "merchant.under.review": "商户审核中",
"message": "消息", "message": "消息",
...@@ -782,6 +804,8 @@ export default { ...@@ -782,6 +804,8 @@ export default {
"notice": "提示", "notice": "提示",
"notification": "通知", "notification": "通知",
"notifications": "消息提醒", "notifications": "消息提醒",
"number.in.range": "区间的数字",
"numbers.between": "]之间的数字",
"numbers.or.commaseparated": "请输入数字或数字+英文逗号,以数字结尾", "numbers.or.commaseparated": "请输入数字或数字+英文逗号,以数字结尾",
"numbers.or.hyphens": "请输入数字或数字和-,以数字结尾", "numbers.or.hyphens": "请输入数字或数字和-,以数字结尾",
"numbers.or.letters": "请输入数字或字母", "numbers.or.letters": "请输入数字或字母",
...@@ -851,6 +875,7 @@ export default { ...@@ -851,6 +875,7 @@ export default {
"payment.in.progress.oa.approved": "付款中(已OA)", "payment.in.progress.oa.approved": "付款中(已OA)",
"payment.in.progress.oa.processing": "付款中(OA中)", "payment.in.progress.oa.processing": "付款中(OA中)",
"payment.in.progress.pending.transfer": "付款中(待打款)", "payment.in.progress.pending.transfer": "付款中(待打款)",
"payment.order.export.data": "付款单导出数据-",
"payment.slip": "付款单", "payment.slip": "付款单",
"payment.slip.date": "付款单生成日期", "payment.slip.date": "付款单生成日期",
"payment.slip.start.time.required": "付款单开始时间不能为空", "payment.slip.start.time.required": "付款单开始时间不能为空",
...@@ -904,12 +929,17 @@ export default { ...@@ -904,12 +929,17 @@ export default {
"platform.remark": "平台备注", "platform.remark": "平台备注",
"please.check": ",请查看", "please.check": ",请查看",
"please.configure": "请配置", "please.configure": "请配置",
"please.enter": "请输入[",
"please.select": "请选择",
"please.select.first": "请先选择",
"please.upload": "请上传",
"pop.merchants.only": "仅限POP商家设置", "pop.merchants.only": "仅限POP商家设置",
"portion": "", "portion": "",
"portion.name.must.be.unique": "份量名称不能重复!", "portion.name.must.be.unique": "份量名称不能重复!",
"portion.size": "份量", "portion.size": "份量",
"portion.size.eg.largesmall.mildspicy": "份量(如大小/小份、微辣/特辣等)", "portion.size.eg.largesmall.mildspicy": "份量(如大小/小份、微辣/特辣等)",
"positive.integer.required": "请输入正整数", "positive.integer.required": "请输入正整数",
"positive.integers.between": "]之间的正整数",
"postchange.content": "变更后内容", "postchange.content": "变更后内容",
"prechange.content": "变更前内容", "prechange.content": "变更前内容",
"precise.weight.unit": "准确重量单位", "precise.weight.unit": "准确重量单位",
...@@ -925,6 +955,7 @@ export default { ...@@ -925,6 +955,7 @@ export default {
"product.beyond.aftersale.period": "商品已超过售后期", "product.beyond.aftersale.period": "商品已超过售后期",
"product.brand": "商品品牌", "product.brand": "商品品牌",
"product.category": "商品分组", "product.category": "商品分组",
"product.category.changed.weight.unit.autoswitched.to": "商品品类已切换,规格重量单位已自动切换为",
"product.change.review": "商品信息变更审核", "product.change.review": "商品信息变更审核",
"product.damaged": "商品破损", "product.damaged": "商品破损",
"product.description": "商品描述", "product.description": "商品描述",
...@@ -933,6 +964,7 @@ export default { ...@@ -933,6 +964,7 @@ export default {
"product.id": "商品id:", "product.id": "商品id:",
"product.image": "商品图片", "product.image": "商品图片",
"product.image.only": "仅商品图片", "product.image.only": "仅商品图片",
"product.images": "商品图片(",
"product.mismatch": "商品与出售商品不符", "product.mismatch": "商品与出售商品不符",
"product.name": "商品名称", "product.name": "商品名称",
"product.name.2.chars": "请输入最少两个字符的商品名称!", "product.name.2.chars": "请输入最少两个字符的商品名称!",
...@@ -964,6 +996,7 @@ export default { ...@@ -964,6 +996,7 @@ export default {
"quantity.star": "量星球", "quantity.star": "量星球",
"quantity.star.merchant.system": "量星球商户管理系统", "quantity.star.merchant.system": "量星球商户管理系统",
"query": "查询", "query": "查询",
"quota": "限额",
"read": "已读", "read": "已读",
"reason": "原因", "reason": "原因",
"recalled": "已收回", "recalled": "已收回",
...@@ -976,8 +1009,11 @@ export default { ...@@ -976,8 +1009,11 @@ export default {
"recipient.info": "收货人信息", "recipient.info": "收货人信息",
"recipient.name": "收件人姓名", "recipient.name": "收件人姓名",
"recommended.candidate.qu.nini.passed.3rd.interview": "你推荐的 曲妮妮 已通过第三轮面试", "recommended.candidate.qu.nini.passed.3rd.interview": "你推荐的 曲妮妮 已通过第三轮面试",
"recommended.size.widthheight": "建议尺寸: ##宽##高 (",
"recommended.size.widthheight.sku.carousel": "建议尺寸: ##宽##高,sku商品轮播图(",
"reconciled.count": "对账成功条数", "reconciled.count": "对账成功条数",
"reconciliation.batch": "对账批次号", "reconciliation.batch": "对账批次号",
"reconciliation.details": "对账明细-",
"reconciliation.status": "对账状态", "reconciliation.status": "对账状态",
"red.amount": "红字金额", "red.amount": "红字金额",
"reduce.stock": "减库存", "reduce.stock": "减库存",
...@@ -1006,6 +1042,7 @@ export default { ...@@ -1006,6 +1042,7 @@ export default {
"reminder": "催单", "reminder": "催单",
"reminder.current.aftersales.type.is.product.not.received": "温馨提示:当前售后类型为用户未收到产品,申请", "reminder.current.aftersales.type.is.product.not.received": "温馨提示:当前售后类型为用户未收到产品,申请",
"request.data.returned.successfully": "服务器成功返回请求的数据。", "request.data.returned.successfully": "服务器成功返回请求的数据。",
"request.error": "请求错误",
"request.settlement": "申请结算", "request.settlement": "申请结算",
"request.targets.nonexistent.record": "发出的请求针对的是不存在的记录,服务器没有进行操作。", "request.targets.nonexistent.record": "发出的请求针对的是不存在的记录,服务器没有进行操作。",
"required": "必填项", "required": "必填项",
...@@ -1061,6 +1098,7 @@ export default { ...@@ -1061,6 +1098,7 @@ export default {
"search.for.logistics": "// 选择物流可搜索", "search.for.logistics": "// 选择物流可搜索",
"secondary.menu": "二级菜单", "secondary.menu": "二级菜单",
"secondary.specification": "二级规格", "secondary.specification": "二级规格",
"seconds": "",
"select": "请选择", "select": "请选择",
"select.1100.batches": "请选择1~100条账单批次", "select.1100.batches": "请选择1~100条账单批次",
"select.account.type": "请选择账户类型!", "select.account.type": "请选择账户类型!",
...@@ -1136,6 +1174,7 @@ export default { ...@@ -1136,6 +1174,7 @@ export default {
"selected.shipping.zones": "勾选商品配送区域设置", "selected.shipping.zones": "勾选商品配送区域设置",
"selection.required": "请选择!", "selection.required": "请选择!",
"selfoperated": "自营", "selfoperated": "自营",
"selfoperated.product.price.update": "自营商品供货价更新表-",
"selling.price": "销售价", "selling.price": "销售价",
"sentry.failed.to.load": "Sentry无法加载", "sentry.failed.to.load": "Sentry无法加载",
"serial.no": "序号", "serial.no": "序号",
...@@ -1181,6 +1220,7 @@ export default { ...@@ -1181,6 +1220,7 @@ export default {
"sichuan.girl": "川妹子", "sichuan.girl": "川妹子",
"signing.date": "签约日期", "signing.date": "签约日期",
"signing.time": "签约时间", "signing.time": "签约时间",
"single.file.size.cannot.exceed": "单个文件大小不能超过",
"single.item.delivery": "单点送", "single.item.delivery": "单点送",
"single.item.no.delivery": "单点不送", "single.item.no.delivery": "单点不送",
"single.specification": "单规格", "single.specification": "单规格",
...@@ -1192,6 +1232,7 @@ export default { ...@@ -1192,6 +1232,7 @@ export default {
"sku.code": "SKU编码", "sku.code": "SKU编码",
"sku.name": "sku名称", "sku.name": "sku名称",
"sku.product.name": "SKU商品名称", "sku.product.name": "SKU商品名称",
"slider.image.size.exceeds.limit": "] 滑动图尺寸不可大于",
"smallscale": "小规模", "smallscale": "小规模",
"sold.out": "已售罄", "sold.out": "已售罄",
"sort": "排序", "sort": "排序",
...@@ -1203,6 +1244,7 @@ export default { ...@@ -1203,6 +1244,7 @@ export default {
"spicy": "辣~", "spicy": "辣~",
"spu.name": "SPU名称:", "spu.name": "SPU名称:",
"start.date": "开始日期", "start.date": "开始日期",
"start.time.cannot.be.before": "起始时间不能早于",
"startend.time.mismatch": "选择开始时间结束时间不能一样", "startend.time.mismatch": "选择开始时间结束时间不能一样",
"status": "状态", "status": "状态",
"stock": "库存数:", "stock": "库存数:",
...@@ -1278,6 +1320,7 @@ export default { ...@@ -1278,6 +1320,7 @@ export default {
"top.up.balance": "充值余额", "top.up.balance": "充值余额",
"topup.details": "充值明细", "topup.details": "充值明细",
"topup.time": "充值时间", "topup.time": "充值时间",
"total": "总共",
"total.refund": "退款总额", "total.refund": "退款总额",
"total.sales": "销售总额", "total.sales": "销售总额",
"town": "", "town": "",
...@@ -1388,6 +1431,7 @@ export default { ...@@ -1388,6 +1431,7 @@ export default {
"week.preview.required": "请选择是否周预览!", "week.preview.required": "请选择是否周预览!",
"weekly.preview": "是否周预览", "weekly.preview": "是否周预览",
"weekly.settlement": "周结", "weekly.settlement": "周结",
"weight": "重量(",
"welcome.to.merchant.system": "欢迎使用商户管理后台系统", "welcome.to.merchant.system": "欢迎使用商户管理后台系统",
"westore.id": "微店ID", "westore.id": "微店ID",
"westore.name": "微店名称", "westore.name": "微店名称",
......
...@@ -109,7 +109,7 @@ const ViewDepartmentModal = ({ visible, onClose, enterpriseList }) => { ...@@ -109,7 +109,7 @@ const ViewDepartmentModal = ({ visible, onClose, enterpriseList }) => {
const pagination = { const pagination = {
...pageInfo, ...pageInfo,
total, total,
showTotal: t => `${t}`, showTotal: t => `${$t('total')}${t}${$t('entries')}`,
onChange, onChange,
onShowSizeChange: onChange, onShowSizeChange: onChange,
}; };
......
...@@ -177,7 +177,7 @@ const StoreManagement = () => { ...@@ -177,7 +177,7 @@ const StoreManagement = () => {
// 删除 // 删除
const delEmployee = ({ staffName, id }) => { const delEmployee = ({ staffName, id }) => {
confirm({ confirm({
title: `确认删除企业员工#${staffName || ''}#?`, title: `${$t('confirm.delete.employee.0')}${staffName || ''}#?`,
onOk() { onOk() {
deleteEmployee(id); deleteEmployee(id);
}, },
...@@ -255,7 +255,7 @@ const StoreManagement = () => { ...@@ -255,7 +255,7 @@ const StoreManagement = () => {
const pagination = { const pagination = {
...page, ...page,
total, total,
showTotal: t => `${t}`, showTotal: t => `${$t('total')}${t}${$t('entries')}`,
onChange, onChange,
onShowSizeChange: onChange, onShowSizeChange: onChange,
}; };
......
...@@ -63,7 +63,7 @@ const DraftModal = props => { ...@@ -63,7 +63,7 @@ const DraftModal = props => {
const pagination = { const pagination = {
...pageInfo, ...pageInfo,
total, total,
showTotal: t => `${t} 项数据`, showTotal: t => `${$t('total')}${t}${$t('data.items')}`,
onChange, onChange,
pageSizeOptions: [4, 20, 50, 100], pageSizeOptions: [4, 20, 50, 100],
showSizeChanger: !0, showSizeChanger: !0,
......
...@@ -119,7 +119,7 @@ class goodsManage extends Component { ...@@ -119,7 +119,7 @@ class goodsManage extends Component {
}); });
if (res) { if (res) {
const blob = new Blob([res]); const blob = new Blob([res]);
saveAs(blob, `商品明细-${format(new Date(), 'yyyyMMdd')}.xlsx`); saveAs(blob, `${$t('product.details')}${format(new Date(), 'yyyyMMdd')}.xlsx`);
} else { } else {
notification.error({ message: $t('download.failed') }); notification.error({ message: $t('download.failed') });
} }
......
...@@ -216,7 +216,7 @@ class supplyPriceUpdate extends Component { ...@@ -216,7 +216,7 @@ class supplyPriceUpdate extends Component {
style={{ marginBottom: 10 }} style={{ marginBottom: 10 }}
onChange={this.onPageChange} onChange={this.onPageChange}
total={tableData.total} total={tableData.total}
showTotal={total => `共${total}条`} showTotal={total => `${$t('total')}${total}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -11,7 +11,7 @@ const ActionBar = options => { ...@@ -11,7 +11,7 @@ const ActionBar = options => {
console.log('options.shopId :>> ', options.shopId); console.log('options.shopId :>> ', options.shopId);
Modal.confirm({ Modal.confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiGoodsActionBatch({ const res = await apiGoodsActionBatch({
skuIds: options.selectedRowKeys, skuIds: options.selectedRowKeys,
......
...@@ -257,7 +257,7 @@ const Takeaway = options => { ...@@ -257,7 +257,7 @@ const Takeaway = options => {
className={styles['takeawayBox--page']} className={styles['takeawayBox--page']}
onChange={onPageChange} onChange={onPageChange}
total={total} total={total}
showTotal={o => `共${o}条`} showTotal={o => `${$t('total')}${o}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -495,7 +495,7 @@ class goodsManage extends Component { ...@@ -495,7 +495,7 @@ class goodsManage extends Component {
style={{ marginBottom: 10 }} style={{ marginBottom: 10 }}
onChange={this.onPageChange} onChange={this.onPageChange}
total={tableData.total} total={tableData.total}
showTotal={total => `共${total}条`} showTotal={total => `${$t('total')}${total}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -17,7 +17,7 @@ const InfoAudit = props => { ...@@ -17,7 +17,7 @@ const InfoAudit = props => {
const obj = { const obj = {
1: '-', 1: '-',
2: $t('review.passed'), 2: $t('review.passed'),
3: `审核拒绝,${audit.rejectReason}`, 3: `${$t('rejected')}${audit.rejectReason}`,
}; };
if (audit) { if (audit) {
return obj[audit.status] || ''; return obj[audit.status] || '';
......
...@@ -455,5 +455,5 @@ export async function apiDownBiddingTemplate(params) { ...@@ -455,5 +455,5 @@ export async function apiDownBiddingTemplate(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([res]); const blob = new Blob([res]);
saveAs(blob, `自营商品供货价更新表-${format(new Date(), 'yyyy-MM-dd')}.xlsx`); saveAs(blob, `${$t('selfoperated.product.price.update')}${format(new Date(), 'yyyy-MM-dd')}.xlsx`);
} }
...@@ -48,7 +48,7 @@ export function column() { ...@@ -48,7 +48,7 @@ export function column() {
const onChangeState = async ({ skuId, state }) => { const onChangeState = async ({ skuId, state }) => {
confirm({ confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiChangeStateGoods({ const res = await apiChangeStateGoods({
ids: skuId, ids: skuId,
...@@ -251,7 +251,7 @@ export function takeawayColumn(actions) { ...@@ -251,7 +251,7 @@ export function takeawayColumn(actions) {
const onChangeState = async ({ skuId, state }) => { const onChangeState = async ({ skuId, state }) => {
confirm({ confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiGoodsActionBatch({ const res = await apiGoodsActionBatch({
skuIds: [skuId], skuIds: [skuId],
......
...@@ -26,7 +26,7 @@ const CustomUpload = props => { ...@@ -26,7 +26,7 @@ const CustomUpload = props => {
} }
} }
if (fileList.length >= limit) { if (fileList.length >= limit) {
message.warning(`最多上传${limit}个!`); message.warning(`${$t('maximum.upload')}${limit}${$t('items')}`);
return; return;
} }
......
...@@ -52,7 +52,7 @@ const PaymentMange = props => { ...@@ -52,7 +52,7 @@ const PaymentMange = props => {
const data = await selfPaymentexportDetail(params); const data = await selfPaymentexportDetail(params);
if (data) { if (data) {
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `账单付款单明细-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('bill.payment.details')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} else { } else {
notification.error({ message: $t('download.failed') }); notification.error({ message: $t('download.failed') });
} }
...@@ -140,7 +140,7 @@ const PaymentMange = props => { ...@@ -140,7 +140,7 @@ const PaymentMange = props => {
if (checkedTime(params)) { if (checkedTime(params)) {
const data = await selfPaymentExport(params); const data = await selfPaymentExport(params);
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `付款单导出数据-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('payment.order.export.data')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
setloading(false); setloading(false);
}; };
......
...@@ -63,7 +63,7 @@ const DraftModal = props => { ...@@ -63,7 +63,7 @@ const DraftModal = props => {
const pagination = { const pagination = {
...pageInfo, ...pageInfo,
total, total,
showTotal: t => `${t} 项数据`, showTotal: t => `${$t('total')}${t}${$t('data.items')}`,
onChange, onChange,
pageSizeOptions: [4, 20, 50, 100], pageSizeOptions: [4, 20, 50, 100],
showSizeChanger: !0, showSizeChanger: !0,
......
...@@ -119,7 +119,7 @@ class goodsManage extends Component { ...@@ -119,7 +119,7 @@ class goodsManage extends Component {
}); });
if (res) { if (res) {
const blob = new Blob([res]); const blob = new Blob([res]);
saveAs(blob, `商品明细-${format(new Date(), 'yyyyMMdd')}.xlsx`); saveAs(blob, `${$t('product.details')}${format(new Date(), 'yyyyMMdd')}.xlsx`);
} else { } else {
notification.error({ message: $t('download.failed') }); notification.error({ message: $t('download.failed') });
} }
......
...@@ -11,7 +11,7 @@ const ActionBar = options => { ...@@ -11,7 +11,7 @@ const ActionBar = options => {
console.log('options.shopId :>> ', options.shopId); console.log('options.shopId :>> ', options.shopId);
Modal.confirm({ Modal.confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiGoodsActionBatch({ const res = await apiGoodsActionBatch({
skuIds: options.selectedRowKeys, skuIds: options.selectedRowKeys,
......
...@@ -257,7 +257,7 @@ const Takeaway = options => { ...@@ -257,7 +257,7 @@ const Takeaway = options => {
className={styles['takeawayBox--page']} className={styles['takeawayBox--page']}
onChange={onPageChange} onChange={onPageChange}
total={total} total={total}
showTotal={o => `共${o}条`} showTotal={o => `${$t('total')}${o}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -499,7 +499,7 @@ class popGoodsManage extends Component { ...@@ -499,7 +499,7 @@ class popGoodsManage extends Component {
style={{ marginBottom: 10 }} style={{ marginBottom: 10 }}
onChange={this.onPageChange} onChange={this.onPageChange}
total={tableData.total} total={tableData.total}
showTotal={total => `共${total}条`} showTotal={total => `${$t('total')}${total}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -17,7 +17,7 @@ const InfoAudit = props => { ...@@ -17,7 +17,7 @@ const InfoAudit = props => {
const obj = { const obj = {
1: '-', 1: '-',
2: $t('review.passed'), 2: $t('review.passed'),
3: `审核拒绝,${audit.rejectReason}`, 3: `${$t('rejected')}${audit.rejectReason}`,
}; };
if (audit) { if (audit) {
return obj[audit.status] || ''; return obj[audit.status] || '';
......
...@@ -455,5 +455,5 @@ export async function apiDownBiddingTemplate(params) { ...@@ -455,5 +455,5 @@ export async function apiDownBiddingTemplate(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([res]); const blob = new Blob([res]);
saveAs(blob, `自营商品供货价更新表-${format(new Date(), 'yyyy-MM-dd')}.xlsx`); saveAs(blob, `${$t('selfoperated.product.price.update')}${format(new Date(), 'yyyy-MM-dd')}.xlsx`);
} }
...@@ -48,7 +48,7 @@ export function column() { ...@@ -48,7 +48,7 @@ export function column() {
const onChangeState = async ({ skuId, state }) => { const onChangeState = async ({ skuId, state }) => {
confirm({ confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiChangeStateGoods({ const res = await apiChangeStateGoods({
ids: skuId, ids: skuId,
...@@ -251,7 +251,7 @@ export function takeawayColumn(actions) { ...@@ -251,7 +251,7 @@ export function takeawayColumn(actions) {
const onChangeState = async ({ skuId, state }) => { const onChangeState = async ({ skuId, state }) => {
confirm({ confirm({
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确认${+state === 6 ? '下架' : '上架'}商品?`, content: `${$t('confirm')}${+state === 6 ? '下架' : '上架'}${$t('product')}`,
onOk: async () => { onOk: async () => {
const res = await apiGoodsActionBatch({ const res = await apiGoodsActionBatch({
skuIds: [skuId], skuIds: [skuId],
......
...@@ -68,7 +68,7 @@ export async function downOrder(params) { ...@@ -68,7 +68,7 @@ export async function downOrder(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `商户订单列表-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('merchant.order.list')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
// 批量发货订单 // 批量发货订单
export async function queryToBatchSend(params) { export async function queryToBatchSend(params) {
...@@ -111,7 +111,7 @@ export async function downUploadeOrder(params) { ...@@ -111,7 +111,7 @@ export async function downUploadeOrder(params) {
1: $t('successful.data'), 1: $t('successful.data'),
2: $t('all.data'), 2: $t('all.data'),
}; };
saveAs(blob, `批量发货-${status[params.status]}-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('batch.shipping')}${status[params.status]}-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
// 延迟发货 // 延迟发货
export function apiDelayDeliverGoods(data) { export function apiDelayDeliverGoods(data) {
......
...@@ -86,7 +86,7 @@ export const CreateFormInput = props => { ...@@ -86,7 +86,7 @@ export const CreateFormInput = props => {
{...roleProps} {...roleProps}
{...options} {...options}
style={{ width: '100%' }} style={{ width: '100%' }}
placeholder={`请输入${title}`} placeholder={`${$t('please.enter')}${title}`}
onBlur={e => { onBlur={e => {
const inputTarget = e.target; const inputTarget = e.target;
const timer = setTimeout(() => { const timer = setTimeout(() => {
...@@ -137,7 +137,7 @@ export const CreateFormInput = props => { ...@@ -137,7 +137,7 @@ export const CreateFormInput = props => {
{...roleProps} {...roleProps}
{...options} {...options}
style={{ width: '100%' }} style={{ width: '100%' }}
placeholder={`请输入${title}`} placeholder={`${$t('please.enter')}${title}`}
onBlur={e => { onBlur={e => {
const inputTarget = e.target; const inputTarget = e.target;
const timer = setTimeout(() => { const timer = setTimeout(() => {
......
...@@ -150,7 +150,7 @@ const EditFormTable = forwardRef((props, ref) => { ...@@ -150,7 +150,7 @@ const EditFormTable = forwardRef((props, ref) => {
key={`${dataIndex}_${rowIndex}`} key={`${dataIndex}_${rowIndex}`}
name={['tableList', rowIndex, dataIndex]} name={['tableList', rowIndex, dataIndex]}
initialValue={record[dataIndex] || null} initialValue={record[dataIndex] || null}
rules={[{ required: roleRules.required, message: `请输入${title}.` }]} rules={[{ required: roleRules.required, message: `${$t('please.enter')}${title}.` }]}
> >
<CreateFormInput <CreateFormInput
{...otherParams} {...otherParams}
......
...@@ -276,7 +276,7 @@ const FormPackage = forwardRef((props, ref) => { ...@@ -276,7 +276,7 @@ const FormPackage = forwardRef((props, ref) => {
} }
arr.push({ arr.push({
uuid: i, uuid: i,
specName: `套餐${i + 1}`, specName: `${$t('combo')}${i + 1}`,
children, children,
}); });
}); });
......
...@@ -77,7 +77,7 @@ const SpecificationTemplate = (props, _) => { ...@@ -77,7 +77,7 @@ const SpecificationTemplate = (props, _) => {
if (!specId) { if (!specId) {
Modal.warning({ Modal.warning({
maskClosable: true, maskClosable: true,
title: `请先选择${label}!`, title: `${$t('please.select.first')}${label}!`,
}); });
return; return;
} }
...@@ -105,7 +105,7 @@ const SpecificationTemplate = (props, _) => { ...@@ -105,7 +105,7 @@ const SpecificationTemplate = (props, _) => {
options={specList} options={specList}
style={{ width: 200 }} style={{ width: 200 }}
fieldNames={{ label: 'specName', value: 'specId' }} fieldNames={{ label: 'specName', value: 'specId' }}
placeholder={`请选择${label}`} placeholder={`${$t('please.select')}${label}`}
showSearch showSearch
filterOption={(input, option) => filterOption={(input, option) =>
option.specName.toLowerCase().indexOf(input.toLowerCase()) >= 0 option.specName.toLowerCase().indexOf(input.toLowerCase()) >= 0
......
...@@ -193,7 +193,7 @@ const FormRuleVPictures = forwardRef((props, ref) => { ...@@ -193,7 +193,7 @@ const FormRuleVPictures = forwardRef((props, ref) => {
{ {
required: imgConfig.cardImageList.rule, required: imgConfig.cardImageList.rule,
type: 'array', type: 'array',
message: `请上传${imgConfig.cardImageList.title}!`, message: `${$t('please.upload')}${imgConfig.cardImageList.title}!`,
}, },
]} ]}
> >
...@@ -212,7 +212,7 @@ const FormRuleVPictures = forwardRef((props, ref) => { ...@@ -212,7 +212,7 @@ const FormRuleVPictures = forwardRef((props, ref) => {
<Form.Item <Form.Item
name={['imageList', key]} name={['imageList', key]}
key={key} key={key}
label={`商品图片(${key})`} label={`${$t('product.images')}${key})`}
rules={[ rules={[
{ required: imgConfig.imageList.rule, type: 'array', message: $t('upload.images') }, { required: imgConfig.imageList.rule, type: 'array', message: $t('upload.images') },
]} ]}
...@@ -243,7 +243,7 @@ const FormRuleVPictures = forwardRef((props, ref) => { ...@@ -243,7 +243,7 @@ const FormRuleVPictures = forwardRef((props, ref) => {
{ {
type: 'array', type: 'array',
required: imgConfig.detailImageList.rule, required: imgConfig.detailImageList.rule,
message: `请上传${imgConfig.detailImageList.title}!`, message: `${$t('please.upload')}${imgConfig.detailImageList.title}!`,
}, },
]} ]}
extra={imgConfig.detailImageList.renderExtra()} extra={imgConfig.detailImageList.renderExtra()}
......
...@@ -89,7 +89,7 @@ const UploadCropImage = forwardRef((props, ref) => { ...@@ -89,7 +89,7 @@ const UploadCropImage = forwardRef((props, ref) => {
new Promise((resolve, reject) => { new Promise((resolve, reject) => {
const LtMB = file.size / 1024 / 1024; const LtMB = file.size / 1024 / 1024;
if (LtMB > 2) { if (LtMB > 2) {
warningTip(`[${file.name}] 图片不可以大于2MB`); warningTip(`[${file.name}${$t('image.size.cannot.exceed.2mb')}`);
resolve(null); resolve(null);
} }
getBase64(file, url => { getBase64(file, url => {
...@@ -103,7 +103,7 @@ const UploadCropImage = forwardRef((props, ref) => { ...@@ -103,7 +103,7 @@ const UploadCropImage = forwardRef((props, ref) => {
resolve(file); resolve(file);
}); });
image.addEventListener('error', () => { image.addEventListener('error', () => {
warningTip(`${file.name}图片上传失败!`); warningTip(`${file.name}${$t('image.upload.failed')}`);
resolve(null); resolve(null);
}); });
image.src = url; image.src = url;
......
...@@ -96,7 +96,7 @@ const UploadImage = forwardRef((props, ref) => { ...@@ -96,7 +96,7 @@ const UploadImage = forwardRef((props, ref) => {
new Promise((resolve, reject) => { new Promise((resolve, reject) => {
const LtMB = file.size / 1024 / 1024; const LtMB = file.size / 1024 / 1024;
if (LtMB > 2) { if (LtMB > 2) {
warningTip(`[${file.name}] 图片不可以大于2MB`); warningTip(`[${file.name}${$t('image.size.cannot.exceed.2mb')}`);
resolve(null); resolve(null);
} }
getBase64(file, url => { getBase64(file, url => {
...@@ -110,7 +110,7 @@ const UploadImage = forwardRef((props, ref) => { ...@@ -110,7 +110,7 @@ const UploadImage = forwardRef((props, ref) => {
resolve(file); resolve(file);
}); });
image.addEventListener('error', () => { image.addEventListener('error', () => {
warningTip(`${file.name}图片上传失败!`); warningTip(`${file.name}${$t('image.upload.failed')}`);
resolve(null); resolve(null);
}); });
image.src = url; image.src = url;
......
...@@ -70,7 +70,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [ ...@@ -70,7 +70,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [
rule: true, rule: true,
limit: 1, limit: 1,
renderExtra(leng) { renderExtra(leng) {
return `建议尺寸: ##宽##高 (${leng} / 1) 封面图第一张 `; return `${$t('recommended.size.widthheight')}${leng}${$t('1.first.cover.image')}`;
}, },
}, },
cardImageList: { cardImageList: {
...@@ -78,7 +78,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [ ...@@ -78,7 +78,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [
rule: true, rule: true,
limit: 11, limit: 11,
renderExtra(leng) { renderExtra(leng) {
return `建议尺寸: ##宽##高,sku商品轮播图(${leng} / 11)`; return `${$t('recommended.size.widthheight.sku.carousel')}${leng} / 11)`;
}, },
}, },
detailImageList: { detailImageList: {
...@@ -102,7 +102,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [ ...@@ -102,7 +102,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [
rule: true, rule: true,
limit: 1, limit: 1,
renderExtra(leng) { renderExtra(leng) {
return `建议尺寸: ##宽##高 (${leng} / 1) 封面图第一张 `; return `${$t('recommended.size.widthheight')}${leng}${$t('1.first.cover.image')}`;
}, },
}, },
cardImageList: { cardImageList: {
...@@ -110,7 +110,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [ ...@@ -110,7 +110,7 @@ export const TaskList = (canAddService, canAddNormal, canTakeawayService) => [
rule: true, rule: true,
limit: 11, limit: 11,
renderExtra(leng) { renderExtra(leng) {
return `建议尺寸: ##宽##高,sku商品轮播图(${leng} / 11)`; return `${$t('recommended.size.widthheight.sku.carousel')}${leng} / 11)`;
}, },
}, },
detailImageList: { detailImageList: {
...@@ -223,7 +223,7 @@ export const StaticColumns = customer => [ ...@@ -223,7 +223,7 @@ export const StaticColumns = customer => [
disabeldRender: () => customer.isDisabled, disabeldRender: () => customer.isDisabled,
}, },
{ {
title: `重量(${customer.isGold ? 'g' : 'kg'})`, title: `${$t('weight')}${customer.isGold ? 'g' : 'kg'})`,
dataIndex: 'weight', dataIndex: 'weight',
editable: true, editable: true,
batchRole: [1], batchRole: [1],
...@@ -372,7 +372,7 @@ export const StaticColumnsPop = customer => [ ...@@ -372,7 +372,7 @@ export const StaticColumnsPop = customer => [
disabeldRender: () => customer.isDisabled, disabeldRender: () => customer.isDisabled,
}, },
{ {
title: `重量(${customer.isGold ? 'g' : 'kg'})`, title: `${$t('weight')}${customer.isGold ? 'g' : 'kg'})`,
dataIndex: 'weight', dataIndex: 'weight',
editable: true, editable: true,
batchRole: [1], batchRole: [1],
......
...@@ -235,7 +235,7 @@ const ServiceGoods = options => { ...@@ -235,7 +235,7 @@ const ServiceGoods = options => {
const sendAsyncHttpRequest = isEdit ? merchantProductEdit : merchantProductAdd; const sendAsyncHttpRequest = isEdit ? merchantProductEdit : merchantProductAdd;
const addResponse = await sendAsyncHttpRequest(sendData); const addResponse = await sendAsyncHttpRequest(sendData);
if (addResponse.data) { if (addResponse.data) {
message.success(`${isEdit ? '修改' : '添加'}成功!`); message.success(`${isEdit ? '修改' : '添加'}${$t('success')}`);
localStorage.remove(localAutoSaveKey); localStorage.remove(localAutoSaveKey);
handleCancel(true, sendData); handleCancel(true, sendData);
} }
...@@ -450,7 +450,7 @@ const ServiceGoods = options => { ...@@ -450,7 +450,7 @@ const ServiceGoods = options => {
txt = $t('kilogram'); txt = $t('kilogram');
} }
if (txt) { if (txt) {
message.warning(`商品品类已切换,规格重量单位已自动切换为${txt}`, 6); message.warning(`${$t('product.category.changed.weight.unit.autoswitched.to')}${txt}`, 6);
} }
}; };
......
...@@ -144,7 +144,7 @@ export const filterSendData = (type, params) => { ...@@ -144,7 +144,7 @@ export const filterSendData = (type, params) => {
item.specs.forEach(itm => { item.specs.forEach(itm => {
if (itm?.unit && tempWeightName.includes(itm?.unit)) { if (itm?.unit && tempWeightName.includes(itm?.unit)) {
itm.quantity = itm.quantity =
`${itm?.quantity}`.indexOf($t('approx')) > -1 ? itm?.quantity : `${itm?.quantity}`; `${itm?.quantity}`.indexOf($t('approx')) > -1 ? itm?.quantity : `${$t('approx')}${itm?.quantity}`;
} }
}); });
} }
...@@ -162,7 +162,7 @@ export const filterSendData = (type, params) => { ...@@ -162,7 +162,7 @@ export const filterSendData = (type, params) => {
} }
if (itm?.unit && tempWeightName.includes(itm?.unit)) { if (itm?.unit && tempWeightName.includes(itm?.unit)) {
itm.quantity = itm.quantity =
`${itm?.quantity}`.indexOf($t('approx')) > -1 ? itm?.quantity : `${itm?.quantity}`; `${itm?.quantity}`.indexOf($t('approx')) > -1 ? itm?.quantity : `${$t('approx')}${itm?.quantity}`;
} }
}); });
} }
......
...@@ -47,7 +47,7 @@ const SettlementSheet = props => { ...@@ -47,7 +47,7 @@ const SettlementSheet = props => {
return true; return true;
} }
notification.error({ notification.error({
message: `${billPeriodData.text}帐期最多可选${billPeriodData?.maxlength || 0}`, message: `${billPeriodData.text}${$t('max.selectable.billing.cycles')}${billPeriodData?.maxlength || 0}${$t('entries')}`,
}); });
return false; return false;
}; };
......
...@@ -23,7 +23,7 @@ const repastType = list => { ...@@ -23,7 +23,7 @@ const repastType = list => {
.filter(item => item !== 4) .filter(item => item !== 4)
.map(item => { .map(item => {
const name = repastTypeList.find(i => i.value === item)?.label; const name = repastTypeList.find(i => i.value === item)?.label;
return name ? `${name}/到店 ` : null; return name ? `${name}${$t('instore')}` : null;
}); });
} }
return list.map(item => { return list.map(item => {
......
...@@ -130,7 +130,7 @@ const StoreManagement = () => { ...@@ -130,7 +130,7 @@ const StoreManagement = () => {
// 删除 // 删除
const delShop = ({ shopName, id }) => { const delShop = ({ shopName, id }) => {
confirm({ confirm({
title: `确认删除企业商户#${shopName || ''}#?`, title: `${$t('confirm.delete.merchant.0')}${shopName || ''}#?`,
content: $t('note.deleting.shop.removes.all.merchant.products'), content: $t('note.deleting.shop.removes.all.merchant.products'),
onOk() { onOk() {
editShop(id); editShop(id);
...@@ -194,7 +194,7 @@ const StoreManagement = () => { ...@@ -194,7 +194,7 @@ const StoreManagement = () => {
const pagination = { const pagination = {
...page, ...page,
total, total,
showTotal: t => `${t}`, showTotal: t => `${$t('total')}${t}${$t('entries')}`,
onChange: handleTableChange, onChange: handleTableChange,
onShowSizeChange: handleTableChange, onShowSizeChange: handleTableChange,
}; };
......
...@@ -167,7 +167,7 @@ const AddressForm = props => { ...@@ -167,7 +167,7 @@ const AddressForm = props => {
return ( return (
<Modal <Modal
title={`${formData.id ? '修改' : '增加'}售后地址`} title={`${formData.id ? '修改' : '增加'}${$t('aftersales.address')}`}
visible={visible} visible={visible}
onCancel={() => onCancel()} onCancel={() => onCancel()}
onOk={handleSubmit} onOk={handleSubmit}
...@@ -210,14 +210,14 @@ const AddressForm = props => { ...@@ -210,14 +210,14 @@ const AddressForm = props => {
rules: [ rules: [
{ {
required: area.required, required: area.required,
message: `请选择${area.name}!`, message: `${$t('please.select')}${area.name}!`,
}, },
], ],
})( })(
<Select <Select
showSearch showSearch
optionFilterProp="label" optionFilterProp="label"
placeholder={`请选择${area.name}`} placeholder={`${$t('please.select')}${area.name}`}
onChange={val => getAddr(val, area.child)} onChange={val => getAddr(val, area.child)}
labelInValue labelInValue
allowClear allowClear
......
...@@ -49,7 +49,7 @@ const CustomerInfo = props => { ...@@ -49,7 +49,7 @@ const CustomerInfo = props => {
if (curren < item.endTime) { if (curren < item.endTime) {
valid = true; valid = true;
const name = meals[item.mealPeriodType]; const name = meals[item.mealPeriodType];
notification.error({ message: `${curName}起始时间不能早于${name}截止时间` }); notification.error({ message: `${curName}${$t('start.time.cannot.be.before')}${name}${$t('deadline')}` });
} }
}); });
return valid; return valid;
...@@ -145,7 +145,7 @@ const CustomerInfo = props => { ...@@ -145,7 +145,7 @@ const CustomerInfo = props => {
confirm({ confirm({
title: $t('risk.warning'), title: $t('risk.warning'),
icon: <ExclamationCircleOutlined />, icon: <ExclamationCircleOutlined />,
content: `确定关闭${mt}餐品类型?此餐品类型下关联的商户及商品将一并删除,不可逆请谨慎操作!`, content: `${$t('confirm.close')}${mt}${$t('delete.food.type.associated.merchantsproducts.will.be.permanently.deleted')}`,
onOk() { onOk() {
resolve(1); resolve(1);
}, },
...@@ -343,7 +343,7 @@ const CustomerInfo = props => { ...@@ -343,7 +343,7 @@ const CustomerInfo = props => {
{fields => ( {fields => (
<> <>
{Object.keys(meals).map(meal => ( {Object.keys(meals).map(meal => (
<Form.Item label={`${mealSections[meal]}订单`} required wrapperCol={{ span: 20 }}> <Form.Item label={`${mealSections[meal]}${$t('order')}`} required wrapperCol={{ span: 20 }}>
<Form.List <Form.List
name={`limit${meal}`} name={`limit${meal}`}
key={`${meal}limit`} key={`${meal}limit`}
......
...@@ -5,10 +5,10 @@ import { validateRequired, isCheckPriceTwoDecimal } from '@/utils/validator'; ...@@ -5,10 +5,10 @@ import { validateRequired, isCheckPriceTwoDecimal } from '@/utils/validator';
const MealLimit = props => ( const MealLimit = props => (
<Form.Item <Form.Item
label={`${props.label}限额`} label={`${props.label}${$t('quota')}`}
name={props.name} name={props.name}
rules={[ rules={[
{ validator: validateRequired, message: `请输入${props.label}限额` }, { validator: validateRequired, message: `${$t('please.enter')}${props.label}${$t('quota')}` },
{ validator: isCheckPriceTwoDecimal, message: $t('enter.valid.price') }, { validator: isCheckPriceTwoDecimal, message: $t('enter.valid.price') },
]} ]}
> >
......
...@@ -168,7 +168,7 @@ export function uploadPropsFn( ...@@ -168,7 +168,7 @@ export function uploadPropsFn(
return; return;
} }
if (that.state.businessInfo[keyName] && that.state.businessInfo[keyName].length >= limit) { if (that.state.businessInfo[keyName] && that.state.businessInfo[keyName].length >= limit) {
notification.error({ message: `最多只能上传${limit}个文件!` }); notification.error({ message: `${$t('max.upload.limit')}${limit}${$t('files')}` });
return; return;
} }
const res = await uploadFile([file], type); const res = await uploadFile([file], type);
...@@ -188,7 +188,7 @@ export function uploadPropsFn( ...@@ -188,7 +188,7 @@ export function uploadPropsFn(
if (imgList.length <= limit) { if (imgList.length <= limit) {
state.businessInfo[keyName] = imgList; state.businessInfo[keyName] = imgList;
} else { } else {
notification.error({ message: `最多只能上传${limit}个文件!` }); notification.error({ message: `${$t('max.upload.limit')}${limit}${$t('files')}` });
} }
return { return {
businessInfo: state.businessInfo, businessInfo: state.businessInfo,
...@@ -208,7 +208,7 @@ export function uploadPropsFn( ...@@ -208,7 +208,7 @@ export function uploadPropsFn(
if (flist.length + imgList.length > limit) { if (flist.length + imgList.length > limit) {
clearTimeout(timer); clearTimeout(timer);
timer = setTimeout(() => { timer = setTimeout(() => {
notification.error({ message: `最多只能上传${limit}个文件!` }); notification.error({ message: `${$t('max.upload.limit')}${limit}${$t('files')}` });
}, 100); }, 100);
return false; return false;
} }
......
...@@ -96,7 +96,7 @@ export default props => { ...@@ -96,7 +96,7 @@ export default props => {
const seconds = parseInt(timeNumber % 60) const seconds = parseInt(timeNumber % 60)
.toString() .toString()
.padStart(2, '0'); .padStart(2, '0');
const str = `${hours}${minutes}${seconds}`; const str = `${hours}${$t('hours')}${minutes}${$t('minutes')}${seconds}${$t('seconds')}`;
timeString[record.orderId] = str; timeString[record.orderId] = str;
const strings = _.cloneDeep(timeString); const strings = _.cloneDeep(timeString);
setTimeString(strings); setTimeString(strings);
......
...@@ -144,7 +144,7 @@ export default () => { ...@@ -144,7 +144,7 @@ export default () => {
const enable = +state === 1 ? 0 : 1; const enable = +state === 1 ? 0 : 1;
const res = await apiEnableStore({ id, state: enable }); const res = await apiEnableStore({ id, state: enable });
if (res === '0000') { if (res === '0000') {
notification.success({ message: `${state ? '禁用' : '启用'}` }); notification.success({ message: `${$t('completed')}${state ? '禁用' : '启用'}` });
onSearch(refSearch.current?.getFieldValue?.() || {}); onSearch(refSearch.current?.getFieldValue?.() || {});
} }
}; };
...@@ -344,7 +344,7 @@ export default () => { ...@@ -344,7 +344,7 @@ export default () => {
style={{ marginBottom: 10 }} style={{ marginBottom: 10 }}
onChange={onPageChange} onChange={onPageChange}
total={totalNum} total={totalNum}
showTotal={total => `共${total}条`} showTotal={total => `${$t('total')}${total}${$t('entries')}`}
current={pageNo} current={pageNo}
pageSize={pageSize} pageSize={pageSize}
showSizeChanger showSizeChanger
......
...@@ -37,7 +37,7 @@ const ImageInfo = file => ...@@ -37,7 +37,7 @@ const ImageInfo = file =>
new Promise((resolve, reject) => { new Promise((resolve, reject) => {
const LtMB = file.size / 1024 / 1024; const LtMB = file.size / 1024 / 1024;
if (LtMB > 2) { if (LtMB > 2) {
warningTip(`[${file.name}] 图片不可以大于2MB`); warningTip(`[${file.name}${$t('image.size.cannot.exceed.2mb')}`);
resolve(null); resolve(null);
} }
getBase64(file, url => { getBase64(file, url => {
...@@ -51,7 +51,7 @@ const ImageInfo = file => ...@@ -51,7 +51,7 @@ const ImageInfo = file =>
resolve(file); resolve(file);
}); });
image.addEventListener('error', () => { image.addEventListener('error', () => {
warningTip(`${file.name}图片上传失败!`); warningTip(`${file.name}${$t('image.upload.failed')}`);
resolve(null); resolve(null);
}); });
image.src = url; image.src = url;
...@@ -68,13 +68,13 @@ const isUploadNext = async (imgFileList, id) => { ...@@ -68,13 +68,13 @@ const isUploadNext = async (imgFileList, id) => {
const filterImage = imgFileList.filter(({ width, height, name }) => { const filterImage = imgFileList.filter(({ width, height, name }) => {
if (id === 'detailImageList') { if (id === 'detailImageList') {
if (width > DETAIL_IMG_MAX_WIDTH) { if (width > DETAIL_IMG_MAX_WIDTH) {
warningTip(`[${name}] 详情图宽度不可大于${DETAIL_IMG_MAX_WIDTH}`); warningTip(`[${name}${$t('detail.image.width.exceeds.limit')}${DETAIL_IMG_MAX_WIDTH}`);
return false; return false;
} }
return true; return true;
} }
if (width > LOOP_IMG_WIDTH_HEIGHT || height > LOOP_IMG_WIDTH_HEIGHT) { if (width > LOOP_IMG_WIDTH_HEIGHT || height > LOOP_IMG_WIDTH_HEIGHT) {
warningTip(`[${name}] 滑动图尺寸不可大于 ${LOOP_IMG_WIDTH_HEIGHT}*${LOOP_IMG_WIDTH_HEIGHT}`); warningTip(`[${name}${$t('slider.image.size.exceeds.limit')}${LOOP_IMG_WIDTH_HEIGHT}*${LOOP_IMG_WIDTH_HEIGHT}`);
return false; return false;
} }
return true; return true;
......
...@@ -68,7 +68,7 @@ export async function downOrder(params) { ...@@ -68,7 +68,7 @@ export async function downOrder(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `商户订单列表-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('merchant.order.list')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
// 批量发货订单 // 批量发货订单
export async function queryToBatchSend(params) { export async function queryToBatchSend(params) {
...@@ -111,7 +111,7 @@ export async function downUploadeOrder(params) { ...@@ -111,7 +111,7 @@ export async function downUploadeOrder(params) {
1: $t('successful.data'), 1: $t('successful.data'),
2: $t('all.data'), 2: $t('all.data'),
}; };
saveAs(blob, `批量发货-${status[params.status]}-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('batch.shipping')}${status[params.status]}-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
// 延迟发货 // 延迟发货
export function apiDelayDeliverGoods(data) { export function apiDelayDeliverGoods(data) {
......
...@@ -87,7 +87,7 @@ const DetailModal = (props, ref) => { ...@@ -87,7 +87,7 @@ const DetailModal = (props, ref) => {
{ {
title: $t('voucher.code'), title: $t('voucher.code'),
width: 150, width: 150,
render: (value, record, index) => `券码${index + 1}`, render: (value, record, index) => `${$t('coupon.code')}${index + 1}`,
}, },
{ {
title: $t('validity.period'), title: $t('validity.period'),
......
...@@ -456,7 +456,7 @@ const OrderList = props => { ...@@ -456,7 +456,7 @@ const OrderList = props => {
<Pagination <Pagination
onChange={onPageChange} onChange={onPageChange}
total={dataTotal} total={dataTotal}
showTotal={(total, range) => `第${range[0]}-${range[1]}条 /总共${total}条`} showTotal={(total, range) => `${$t('no')}${range[0]}-${range[1]}${$t('entries.total')}${total}${$t('entries')}`}
pageSize={pagination.pageSize} pageSize={pagination.pageSize}
current={pagination.pageNo} current={pagination.pageNo}
/> />
......
...@@ -166,7 +166,7 @@ const AddressForm = props => { ...@@ -166,7 +166,7 @@ const AddressForm = props => {
return ( return (
<Modal <Modal
title={`${formData.id ? '修改' : '增加'}售后地址`} title={`${formData.id ? '修改' : '增加'}${$t('aftersales.address')}`}
visible={visible} visible={visible}
onCancel={() => onCancel()} onCancel={() => onCancel()}
onOk={handleSubmit} onOk={handleSubmit}
...@@ -198,13 +198,13 @@ const AddressForm = props => { ...@@ -198,13 +198,13 @@ const AddressForm = props => {
rules: [ rules: [
{ {
required: area.required, required: area.required,
message: `请选择${area.name}!`, message: `${$t('please.select')}${area.name}!`,
}, },
], ],
})( })(
<Select <Select
showSearch showSearch
placeholder={`请选择${area.name}`} placeholder={`${$t('please.select')}${area.name}`}
onChange={val => getAddr(val, area.child)} onChange={val => getAddr(val, area.child)}
labelInValue labelInValue
allowClear allowClear
......
...@@ -55,7 +55,7 @@ export async function downDetail(params) { ...@@ -55,7 +55,7 @@ export async function downDetail(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `对账明细-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('reconciliation.details')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
export async function detailQuery(params) { export async function detailQuery(params) {
......
...@@ -67,7 +67,7 @@ export async function download(params) { ...@@ -67,7 +67,7 @@ export async function download(params) {
responseType: 'arrayBuffer', responseType: 'arrayBuffer',
}); });
const blob = new Blob([data]); const blob = new Blob([data]);
saveAs(blob, `商户货款结算明细-${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`); saveAs(blob, `${$t('merchant.settlement.details')}${format(new Date(), 'yyyyMMddHHmmss')}.xlsx`);
} }
// 附件信息 // 附件信息
export async function docQuery(settlementNo) { export async function docQuery(settlementNo) {
......
...@@ -38,7 +38,7 @@ const errorHandler = error => { ...@@ -38,7 +38,7 @@ const errorHandler = error => {
const errorText = codeMessage[response.status] || response.statusText; const errorText = codeMessage[response.status] || response.statusText;
const { status, url } = response; const { status, url } = response;
notification.error({ notification.error({
message: `请求错误 ${status}: ${url}`, message: `${$t('request.error')}${status}: ${url}`,
description: errorText, description: errorText,
}); });
} }
......
...@@ -96,11 +96,11 @@ export function checkMaxNumber(rule, value, callback) { ...@@ -96,11 +96,11 @@ export function checkMaxNumber(rule, value, callback) {
if (!value || value === 'undefined') { if (!value || value === 'undefined') {
callback(); callback();
} else if (rule.isInteger && !rsCheck) { } else if (rule.isInteger && !rsCheck) {
callback(new Error(`请输入[${rule.min}, ${rule.max}]之间的正整数`)); callback(new Error(`${$t('please.enter')}${rule.min}, ${rule.max}${$t('positive.integers.between')}`));
} else if (!Number(value)) { } else if (!Number(value)) {
callback(new Error(`请输入[${rule.min}, ${rule.max}]之间的数字`)); callback(new Error(`${$t('please.enter')}${rule.min}, ${rule.max}${$t('numbers.between')}`));
} else if (value < rule.min || value > rule.max) { } else if (value < rule.min || value > rule.max) {
callback(new Error(`请输入[${rule.min}, ${rule.max}]之间的数字`)); callback(new Error(`${$t('please.enter')}${rule.min}, ${rule.max}${$t('numbers.between')}`));
} else { } else {
callback(); callback();
} }
...@@ -184,7 +184,7 @@ export const isNumberSection = (rule, value, callback) => { ...@@ -184,7 +184,7 @@ export const isNumberSection = (rule, value, callback) => {
if (!Number(value)) { if (!Number(value)) {
callback(new Error($t('numbers.required'))); callback(new Error($t('numbers.required')));
} else if (rule.min > +value || rule.max < +value) { } else if (rule.min > +value || rule.max < +value) {
callback(new Error(rule.message || `请输入${rule.min}-${rule.max}区间的数字`)); callback(new Error(rule.message || `${$t('please.enter')}${rule.min}-${rule.max}${$t('number.in.range')}`));
} else { } else {
callback(); callback();
} }
......
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