Browse Source
# Conflicts: # admin/src/app/lang/zh-cn/customer_resources.customer_resources.json # admin/src/app/lang/zh-cn/physical_test.physical_test.json # admin/src/app/lang/zh-cn/physical_test.physical_test_edit.json # admin/src/app/views/customer_resources/customer_resources.vue # admin/src/app/views/physical_test/physical_test.vue # admin/src/app/views/physical_test/physical_test_edit.vue # niucloud/app/adminapi/controller/customer_resources/CustomerResources.php # niucloud/app/adminapi/controller/physical_test/PhysicalTest.php # niucloud/app/adminapi/route/physical_test.php # niucloud/app/model/physical_test/PhysicalTest.php # niucloud/app/service/admin/physical_test/PhysicalTestService.phpyuhongzhe
753 changed files with 126589 additions and 88227 deletions
@ -1,35 +1,35 @@ |
|||
{ |
|||
"contactName":"联系人", |
|||
"mobile":"联系方式", |
|||
"provinceId":"省", |
|||
"cityId":"市", |
|||
"districtId":"区", |
|||
"address":"详细地址", |
|||
"fullAddress":"地址", |
|||
"lat":"纬度", |
|||
"lng":"经度", |
|||
"isDeliveryAddress":"是否是发货地址", |
|||
"isRefundAddress":"是否是退货地址", |
|||
"isDefaultDelivery":"默认发货地址", |
|||
"isDefaultRefund":"默认收货地址", |
|||
"contactNamePlaceholder":"请输入联系人", |
|||
"mobilePlaceholder":"请输入联系方式", |
|||
"mobileTips":"请输入正确的手机号", |
|||
"addressPlaceholder":"请输入详细地址", |
|||
"fullAddressPlaceholder":"请输入地址", |
|||
"latPlaceholder":"请输入纬度", |
|||
"lngPlaceholder":"请输入经度", |
|||
"isDeliveryAddressPlaceholder":"请输入是否是发货地址", |
|||
"isRefundAddressPlaceholder":"请输入是否是退货地址", |
|||
"isDefaultDeliveryPlaceholder":"请输入默认发货地址", |
|||
"isDefaultRefundPlaceholder":"请输入默认收货地址", |
|||
"addShopAddress":"添加商家地址库", |
|||
"updateShopAddress":"编辑商家地址库", |
|||
"shopAddressDeleteTips":"确定要删除该商家地址库吗?", |
|||
"addressType": "地址类型", |
|||
"deliveryAddress": "发货地址", |
|||
"refundAddress": "收货地址", |
|||
"defaultDeliveryAddress": "是否设为默认发货地址", |
|||
"defaultRefundAddress": "是否设为默认收货地址", |
|||
"addressTypeRequire": "至少需设置一项类型" |
|||
} |
|||
"contactName": "联系人", |
|||
"mobile": "联系方式", |
|||
"provinceId": "省", |
|||
"cityId": "市", |
|||
"districtId": "区", |
|||
"address": "详细地址", |
|||
"fullAddress": "地址", |
|||
"lat": "纬度", |
|||
"lng": "经度", |
|||
"isDeliveryAddress": "是否是发货地址", |
|||
"isRefundAddress": "是否是退货地址", |
|||
"isDefaultDelivery": "默认发货地址", |
|||
"isDefaultRefund": "默认收货地址", |
|||
"contactNamePlaceholder": "请输入联系人", |
|||
"mobilePlaceholder": "请输入联系方式", |
|||
"mobileTips": "请输入正确的手机号", |
|||
"addressPlaceholder": "请输入详细地址", |
|||
"fullAddressPlaceholder": "请输入地址", |
|||
"latPlaceholder": "请输入纬度", |
|||
"lngPlaceholder": "请输入经度", |
|||
"isDeliveryAddressPlaceholder": "请输入是否是发货地址", |
|||
"isRefundAddressPlaceholder": "请输入是否是退货地址", |
|||
"isDefaultDeliveryPlaceholder": "请输入默认发货地址", |
|||
"isDefaultRefundPlaceholder": "请输入默认收货地址", |
|||
"addShopAddress": "添加商家地址库", |
|||
"updateShopAddress": "编辑商家地址库", |
|||
"shopAddressDeleteTips": "确定要删除该商家地址库吗?", |
|||
"addressType": "地址类型", |
|||
"deliveryAddress": "发货地址", |
|||
"refundAddress": "收货地址", |
|||
"defaultDeliveryAddress": "是否设为默认发货地址", |
|||
"defaultRefundAddress": "是否设为默认收货地址", |
|||
"addressTypeRequire": "至少需设置一项类型" |
|||
} |
|||
|
|||
@ -1,20 +1,20 @@ |
|||
{ |
|||
"companyId":"", |
|||
"companyIdPlaceholder":"请输入", |
|||
"companyName":"名称", |
|||
"companyNamePlaceholder":"请输入物流公司名称", |
|||
"logo":"LOGO", |
|||
"logoPlaceholder":"请输入物流公司logo", |
|||
"url":"网址", |
|||
"urlPlaceholder":"请输入物流公司网址", |
|||
"expressNoPlaceholder":"请输入物流公司编号", |
|||
"expressNoTips": "物流公司编号作用于物流查询,请根据物流跟踪对应配置设置编号", |
|||
"expressNoKd100":"快递100编码", |
|||
"expressNoKd100Placeholder":"请输入快递100编码", |
|||
"addCompany":"添加物流公司", |
|||
"updateCompany":"编辑物流公司", |
|||
"electronicSheetSwitchName": "是否支持电子面单", |
|||
"expressNoElectronicSheet":"电子面单编号", |
|||
"expressNo":"物流跟踪编号", |
|||
"companyDeleteTips":"确定要删除该数据吗?" |
|||
} |
|||
"companyId": "", |
|||
"companyIdPlaceholder": "请输入", |
|||
"companyName": "名称", |
|||
"companyNamePlaceholder": "请输入物流公司名称", |
|||
"logo": "LOGO", |
|||
"logoPlaceholder": "请输入物流公司logo", |
|||
"url": "网址", |
|||
"urlPlaceholder": "请输入物流公司网址", |
|||
"expressNoPlaceholder": "请输入物流公司编号", |
|||
"expressNoTips": "物流公司编号作用于物流查询,请根据物流跟踪对应配置设置编号", |
|||
"expressNoKd100": "快递100编码", |
|||
"expressNoKd100Placeholder": "请输入快递100编码", |
|||
"addCompany": "添加物流公司", |
|||
"updateCompany": "编辑物流公司", |
|||
"electronicSheetSwitchName": "是否支持电子面单", |
|||
"expressNoElectronicSheet": "电子面单编号", |
|||
"expressNo": "物流跟踪编号", |
|||
"companyDeleteTips": "确定要删除该数据吗?" |
|||
} |
|||
|
|||
@ -1,44 +1,43 @@ |
|||
{ |
|||
"companyId":"", |
|||
"companyIdPlaceholder":"请输入", |
|||
"companyName":"名称", |
|||
"companyNamePlaceholder":"请输入物流公司名称", |
|||
"logo":"LOGO", |
|||
"logoPlaceholder":"请输入物流公司logo", |
|||
"url":"网址", |
|||
"urlPlaceholder":"请输入物流公司网址", |
|||
"expressNo":"物流跟踪编号", |
|||
"expressNoPlaceholder":"请输入物流公司编号", |
|||
"expressNoTips": "物流公司编号作用于物流查询,请根据物流跟踪对应配置设置编号", |
|||
"expressNoKd100":"快递100编码", |
|||
"expressNoKd100Placeholder":"请输入快递100编码", |
|||
"addCompany":"添加物流公司", |
|||
"updateCompany":"编辑物流公司", |
|||
"expressNoElectronicSheet":"电子面单编号", |
|||
"expressNoElectronicSheetTips":"电子面单编号作用于电子面单查询,请根据电子面单对应配置设置编号", |
|||
"printStyle": "模板样式", |
|||
"addPrintStyle": "添加模板样式", |
|||
"expType": "业务类型", |
|||
"addExpType": "添加业务类型", |
|||
"expTypeName": "业务名称", |
|||
"expTypeTextTips": "业务名称不能为空", |
|||
"expTypeValueTips": "业务值不能为空", |
|||
"expTypeTextRepeatTips": "业务名称不可以重复,请重新填写", |
|||
"expTypeValueRepeatTips": "业务值不可以重复,请重新填写", |
|||
"expTypeValueNullTips": "业务值不可以为零", |
|||
"expTypeValue": "业务值", |
|||
"electronicSheetSwitch": "是否支持电子面单", |
|||
"printStyleName": "模板名称" , |
|||
"printStyleNameTips": "模板名称不能为空", |
|||
"printStyleSizeTips": "模板尺寸不能为空", |
|||
"printStyleNameRepeatTips": "模板名称不可以重复,请重新填写", |
|||
"printStyleSizeRepeatTips": "模板尺寸不可以重复,请重新填写", |
|||
"printStyleId": "模板尺寸", |
|||
"expTypeTips": "快递鸟业务类型" , |
|||
"expTypeTips1": "不填默认为1" , |
|||
"printStyleTips": "快递鸟模版规格(常用)", |
|||
"printStyleTips1": "主流快递单打印纸尺寸一般为:76*130,100*180(单位mm)", |
|||
"printStyleTips2": "不填写则取物流公司的默认模板", |
|||
"examine": "点击查看" |
|||
|
|||
} |
|||
"companyId": "", |
|||
"companyIdPlaceholder": "请输入", |
|||
"companyName": "名称", |
|||
"companyNamePlaceholder": "请输入物流公司名称", |
|||
"logo": "LOGO", |
|||
"logoPlaceholder": "请输入物流公司logo", |
|||
"url": "网址", |
|||
"urlPlaceholder": "请输入物流公司网址", |
|||
"expressNo": "物流跟踪编号", |
|||
"expressNoPlaceholder": "请输入物流公司编号", |
|||
"expressNoTips": "物流公司编号作用于物流查询,请根据物流跟踪对应配置设置编号", |
|||
"expressNoKd100": "快递100编码", |
|||
"expressNoKd100Placeholder": "请输入快递100编码", |
|||
"addCompany": "添加物流公司", |
|||
"updateCompany": "编辑物流公司", |
|||
"expressNoElectronicSheet": "电子面单编号", |
|||
"expressNoElectronicSheetTips": "电子面单编号作用于电子面单查询,请根据电子面单对应配置设置编号", |
|||
"printStyle": "模板样式", |
|||
"addPrintStyle": "添加模板样式", |
|||
"expType": "业务类型", |
|||
"addExpType": "添加业务类型", |
|||
"expTypeName": "业务名称", |
|||
"expTypeTextTips": "业务名称不能为空", |
|||
"expTypeValueTips": "业务值不能为空", |
|||
"expTypeTextRepeatTips": "业务名称不可以重复,请重新填写", |
|||
"expTypeValueRepeatTips": "业务值不可以重复,请重新填写", |
|||
"expTypeValueNullTips": "业务值不可以为零", |
|||
"expTypeValue": "业务值", |
|||
"electronicSheetSwitch": "是否支持电子面单", |
|||
"printStyleName": "模板名称", |
|||
"printStyleNameTips": "模板名称不能为空", |
|||
"printStyleSizeTips": "模板尺寸不能为空", |
|||
"printStyleNameRepeatTips": "模板名称不可以重复,请重新填写", |
|||
"printStyleSizeRepeatTips": "模板尺寸不可以重复,请重新填写", |
|||
"printStyleId": "模板尺寸", |
|||
"expTypeTips": "快递鸟业务类型", |
|||
"expTypeTips1": "不填默认为1", |
|||
"printStyleTips": "快递鸟模版规格(常用)", |
|||
"printStyleTips1": "主流快递单打印纸尺寸一般为:76*130,100*180(单位mm)", |
|||
"printStyleTips2": "不填写则取物流公司的默认模板", |
|||
"examine": "点击查看" |
|||
} |
|||
|
|||
@ -1,11 +1,11 @@ |
|||
{ |
|||
"store":"启动门店自提后,买家可选择自提点提货。", |
|||
"express":"启用物流配送后,买家下单可以选择快递发货。", |
|||
"local_delivery":"启用同城配送后,在配送范围内的买家可以选择同城配送。", |
|||
"deliveryStaff":"配送员", |
|||
"deliveryCompany":"物流公司", |
|||
"deliveryTemplate":"运费模版", |
|||
"deliverySearch":"物流跟踪", |
|||
"deliveryStore":"自提点", |
|||
"localConfig": "同城配送设置" |
|||
} |
|||
"store": "启动门店自提后,买家可选择自提点提货。", |
|||
"express": "启用物流配送后,买家下单可以选择快递发货。", |
|||
"local_delivery": "启用同城配送后,在配送范围内的买家可以选择同城配送。", |
|||
"deliveryStaff": "配送员", |
|||
"deliveryCompany": "物流公司", |
|||
"deliveryTemplate": "运费模版", |
|||
"deliverySearch": "物流跟踪", |
|||
"deliveryStore": "自提点", |
|||
"localConfig": "同城配送设置" |
|||
} |
|||
|
|||
@ -1,55 +1,55 @@ |
|||
{ |
|||
"basicSettings":"同城配送基础设置", |
|||
"timeIsOpen":"配送时间设置", |
|||
"timeIsOpenTips":"开启后,买家下单选择同城配送时,可选择配送时间,提交订单后,将在买家备注中显示。", |
|||
"close": "关闭", |
|||
"open": "开启", |
|||
"everyDay": "每天", |
|||
"monday": "周一", |
|||
"tuesday": "周二", |
|||
"wednesday": "周三", |
|||
"thursday": "周四", |
|||
"friday": "周五", |
|||
"saturday": "周六", |
|||
"sunday": "周日", |
|||
"timeWeekRequire": "请选择配送时间", |
|||
"deliveryTimeSetting": "配送时间设置", |
|||
"feeType": "收费标准", |
|||
"region": "按区域收取配送费", |
|||
"distance": "按距离收取配送费", |
|||
"district": "按行政区域收取配送费", |
|||
"feeSetting": "费用设置", |
|||
"weightFee": "续重收费", |
|||
"feeSettingTextOne": "km内按", |
|||
"feeSettingTextTwo": "元收取配送费,每超出", |
|||
"feeSettingTextThree": "km费用增加", |
|||
"priceUnit": "元", |
|||
"weightFeeTextOne": "商品重量", |
|||
"weightFeeTextTwo": "kg 内不额外收费,每超出", |
|||
"weightFeeTextThree": "kg 费用增加", |
|||
"areaName": "区域名称", |
|||
"startPrice": "起送价", |
|||
"deliveryPrice": "配送费", |
|||
"areaType": "划分方式", |
|||
"radius": "半径", |
|||
"custom": "自定义", |
|||
"addDeliveryArea": "添加配送区域", |
|||
"baseDistRequire": "请输入起始公里数", |
|||
"gradDistRequire": "请输入超出公里数", |
|||
"basePriceRequire": "请输入起始公里内的配送费用", |
|||
"gradPriceRequire": "请输入每超出公里部分的费用", |
|||
"areaNameRequire": "请输入区域名称", |
|||
"startPriceRequire": "请输入起送价", |
|||
"startPriceMin": "起送价不能小于0", |
|||
"deliveryPriceRequire": "请输入配送费", |
|||
"deliveryPriceMin": "配送费不能小于0", |
|||
"areaPlaceholder": "请添加配送区域", |
|||
"deliveryType": "配送方式", |
|||
"business": "商家自配送", |
|||
"deliveryTypeRequire": "至少需选择一种配送方式", |
|||
"deliveryAddress": "取货地址", |
|||
"defaultDeliveryAddressEmpty": "请先配置默认发货地址", |
|||
"toSetting": "去配置", |
|||
"update": "修改", |
|||
"deliveryAddressChange": "取货地址已变更请注意是否需重新调整配送区域" |
|||
} |
|||
"basicSettings": "同城配送基础设置", |
|||
"timeIsOpen": "配送时间设置", |
|||
"timeIsOpenTips": "开启后,买家下单选择同城配送时,可选择配送时间,提交订单后,将在买家备注中显示。", |
|||
"close": "关闭", |
|||
"open": "开启", |
|||
"everyDay": "每天", |
|||
"monday": "周一", |
|||
"tuesday": "周二", |
|||
"wednesday": "周三", |
|||
"thursday": "周四", |
|||
"friday": "周五", |
|||
"saturday": "周六", |
|||
"sunday": "周日", |
|||
"timeWeekRequire": "请选择配送时间", |
|||
"deliveryTimeSetting": "配送时间设置", |
|||
"feeType": "收费标准", |
|||
"region": "按区域收取配送费", |
|||
"distance": "按距离收取配送费", |
|||
"district": "按行政区域收取配送费", |
|||
"feeSetting": "费用设置", |
|||
"weightFee": "续重收费", |
|||
"feeSettingTextOne": "km内按", |
|||
"feeSettingTextTwo": "元收取配送费,每超出", |
|||
"feeSettingTextThree": "km费用增加", |
|||
"priceUnit": "元", |
|||
"weightFeeTextOne": "商品重量", |
|||
"weightFeeTextTwo": "kg 内不额外收费,每超出", |
|||
"weightFeeTextThree": "kg 费用增加", |
|||
"areaName": "区域名称", |
|||
"startPrice": "起送价", |
|||
"deliveryPrice": "配送费", |
|||
"areaType": "划分方式", |
|||
"radius": "半径", |
|||
"custom": "自定义", |
|||
"addDeliveryArea": "添加配送区域", |
|||
"baseDistRequire": "请输入起始公里数", |
|||
"gradDistRequire": "请输入超出公里数", |
|||
"basePriceRequire": "请输入起始公里内的配送费用", |
|||
"gradPriceRequire": "请输入每超出公里部分的费用", |
|||
"areaNameRequire": "请输入区域名称", |
|||
"startPriceRequire": "请输入起送价", |
|||
"startPriceMin": "起送价不能小于0", |
|||
"deliveryPriceRequire": "请输入配送费", |
|||
"deliveryPriceMin": "配送费不能小于0", |
|||
"areaPlaceholder": "请添加配送区域", |
|||
"deliveryType": "配送方式", |
|||
"business": "商家自配送", |
|||
"deliveryTypeRequire": "至少需选择一种配送方式", |
|||
"deliveryAddress": "取货地址", |
|||
"defaultDeliveryAddressEmpty": "请先配置默认发货地址", |
|||
"toSetting": "去配置", |
|||
"update": "修改", |
|||
"deliveryAddressChange": "取货地址已变更请注意是否需重新调整配送区域" |
|||
} |
|||
|
|||
@ -1,20 +1,20 @@ |
|||
{ |
|||
"prompt": "提示", |
|||
"promptTips1-1": "请到快递鸟官网申请", |
|||
"promptTips1-2": "快递鸟接口:目前只支持“申通,圆通、百世,极兔”免费查询。", |
|||
"promptTips2": "请到快递100官网申请", |
|||
"interfaceType": "接口类型", |
|||
"kdn": "快递鸟", |
|||
"kd100": "快递100", |
|||
"kdnEBusinessIDPlaceholder": "请输入快递鸟EBusinessID", |
|||
"kdnEBusinessIDTips": "快递鸟电商ID", |
|||
"kdnAppKeyPlaceholder": "请输入快递鸟AppKey", |
|||
"kdnAppKeyTips": "快递鸟分配的电商加密私钥", |
|||
"isPayEdition": "快递鸟套餐", |
|||
"free": "免费", |
|||
"pay": "付费", |
|||
"kd100AppKeyPlaceholder": "请输入快递100AppKey", |
|||
"kd100AppKeyTips": "快递100应用密钥", |
|||
"kd100CustomerPlaceholder": "请输入快递100Customer", |
|||
"kd100CustomerTips": "快递100分配给的公司编号" |
|||
} |
|||
"prompt": "提示", |
|||
"promptTips1-1": "请到快递鸟官网申请", |
|||
"promptTips1-2": "快递鸟接口:目前只支持“申通,圆通、百世,极兔”免费查询。", |
|||
"promptTips2": "请到快递100官网申请", |
|||
"interfaceType": "接口类型", |
|||
"kdn": "快递鸟", |
|||
"kd100": "快递100", |
|||
"kdnEBusinessIDPlaceholder": "请输入快递鸟EBusinessID", |
|||
"kdnEBusinessIDTips": "快递鸟电商ID", |
|||
"kdnAppKeyPlaceholder": "请输入快递鸟AppKey", |
|||
"kdnAppKeyTips": "快递鸟分配的电商加密私钥", |
|||
"isPayEdition": "快递鸟套餐", |
|||
"free": "免费", |
|||
"pay": "付费", |
|||
"kd100AppKeyPlaceholder": "请输入快递100AppKey", |
|||
"kd100AppKeyTips": "快递100应用密钥", |
|||
"kd100CustomerPlaceholder": "请输入快递100Customer", |
|||
"kd100CustomerTips": "快递100分配给的公司编号" |
|||
} |
|||
|
|||
@ -1,9 +1,9 @@ |
|||
{ |
|||
"addDeliveryPersonnel":"添加配送员", |
|||
"updateDeliver":"编辑配送员", |
|||
"deliverName":"配送员名称", |
|||
"deliverMobile":"配送员手机号", |
|||
"deliverNamePlaceholder":"请输入配送员名称", |
|||
"deliverMobilePlaceholder":"请输入配送员手机号", |
|||
"deliverDeleteTips":"确定要删除该数据吗?" |
|||
} |
|||
"addDeliveryPersonnel": "添加配送员", |
|||
"updateDeliver": "编辑配送员", |
|||
"deliverName": "配送员名称", |
|||
"deliverMobile": "配送员手机号", |
|||
"deliverNamePlaceholder": "请输入配送员名称", |
|||
"deliverMobilePlaceholder": "请输入配送员手机号", |
|||
"deliverDeleteTips": "确定要删除该数据吗?" |
|||
} |
|||
|
|||
@ -1,18 +1,18 @@ |
|||
{ |
|||
"storeId":"", |
|||
"storeName":"自提点信息", |
|||
"storeNamePlaceholder":"请输入自提点名称", |
|||
"storeLogo":"自提点logo", |
|||
"storeMobile":"联系电话", |
|||
"address":"详细地址", |
|||
"fullAddress":"联系地址", |
|||
"longitude":"经度", |
|||
"latitude":"纬度", |
|||
"tradeTime":"营业时间", |
|||
"createTime":"添加时间", |
|||
"createTimePlaceholder":"请输入添加时间", |
|||
"addStore":"添加自提点", |
|||
"updateStore":"编辑自提点", |
|||
"storeDeleteTips":"确定要删除该数据吗?", |
|||
"storeInfo": "自提点信息" |
|||
} |
|||
"storeId": "", |
|||
"storeName": "自提点信息", |
|||
"storeNamePlaceholder": "请输入自提点名称", |
|||
"storeLogo": "自提点logo", |
|||
"storeMobile": "联系电话", |
|||
"address": "详细地址", |
|||
"fullAddress": "联系地址", |
|||
"longitude": "经度", |
|||
"latitude": "纬度", |
|||
"tradeTime": "营业时间", |
|||
"createTime": "添加时间", |
|||
"createTimePlaceholder": "请输入添加时间", |
|||
"addStore": "添加自提点", |
|||
"updateStore": "编辑自提点", |
|||
"storeDeleteTips": "确定要删除该数据吗?", |
|||
"storeInfo": "自提点信息" |
|||
} |
|||
|
|||
@ -1,38 +1,38 @@ |
|||
{ |
|||
"storeName":"自提点名称", |
|||
"storeDesc":"简介", |
|||
"storeLogo":"自提点logo", |
|||
"storeMobile":"手机号", |
|||
"provinceId":"省id", |
|||
"cityId":"市", |
|||
"districtId":"县(区)", |
|||
"address":"详细地址", |
|||
"fullAddress":"完整地址", |
|||
"longitude":"经度", |
|||
"latitude":"纬度", |
|||
"tradeTime":"营业时间", |
|||
"createTime":"下单时间", |
|||
"updateTime":"更新时间", |
|||
"storeNamePlaceholder":"请输入自提点名称", |
|||
"storeDescPlaceholder":"请输入简介", |
|||
"storeLogoPlaceholder":"请上传自提点logo", |
|||
"storeMobilePlaceholder":"请输入手机号", |
|||
"provinceIdPlaceholder":"请选择省id", |
|||
"cityIdPlaceholder":"请选择市", |
|||
"districtIdPlaceholder":"请选择县(区)", |
|||
"addressPlaceholder":"请输入详细地址", |
|||
"fullAddressPlaceholder":"请输入完整地址", |
|||
"longitudePlaceholder":"请输入经度", |
|||
"latitudePlaceholder":"请输入纬度", |
|||
"tradeTimePlaceholder":"请输入营业时间", |
|||
"tradeTimeTips": "例:上午9:00-12:00,下午2:00-6:00", |
|||
"createTimePlaceholder":"请选择添加时间", |
|||
"updateTimePlaceholder":"请输入更新时间", |
|||
"addStore":"添加自提点", |
|||
"updateStore":"编辑自提点", |
|||
"storeDeleteTips":"确定要删除该自提点吗?", |
|||
"storeAddress": "自提点地址", |
|||
"storeAddressPlaceholder": "请选择自提点地址", |
|||
"storeAddressDetail": "自提点详细地址", |
|||
"storeAddressDetailPlaceholder": "请输入自提点详细地址" |
|||
} |
|||
"storeName": "自提点名称", |
|||
"storeDesc": "简介", |
|||
"storeLogo": "自提点logo", |
|||
"storeMobile": "手机号", |
|||
"provinceId": "省id", |
|||
"cityId": "市", |
|||
"districtId": "县(区)", |
|||
"address": "详细地址", |
|||
"fullAddress": "完整地址", |
|||
"longitude": "经度", |
|||
"latitude": "纬度", |
|||
"tradeTime": "营业时间", |
|||
"createTime": "下单时间", |
|||
"updateTime": "更新时间", |
|||
"storeNamePlaceholder": "请输入自提点名称", |
|||
"storeDescPlaceholder": "请输入简介", |
|||
"storeLogoPlaceholder": "请上传自提点logo", |
|||
"storeMobilePlaceholder": "请输入手机号", |
|||
"provinceIdPlaceholder": "请选择省id", |
|||
"cityIdPlaceholder": "请选择市", |
|||
"districtIdPlaceholder": "请选择县(区)", |
|||
"addressPlaceholder": "请输入详细地址", |
|||
"fullAddressPlaceholder": "请输入完整地址", |
|||
"longitudePlaceholder": "请输入经度", |
|||
"latitudePlaceholder": "请输入纬度", |
|||
"tradeTimePlaceholder": "请输入营业时间", |
|||
"tradeTimeTips": "例:上午9:00-12:00,下午2:00-6:00", |
|||
"createTimePlaceholder": "请选择添加时间", |
|||
"updateTimePlaceholder": "请输入更新时间", |
|||
"addStore": "添加自提点", |
|||
"updateStore": "编辑自提点", |
|||
"storeDeleteTips": "确定要删除该自提点吗?", |
|||
"storeAddress": "自提点地址", |
|||
"storeAddressPlaceholder": "请选择自提点地址", |
|||
"storeAddressDetail": "自提点详细地址", |
|||
"storeAddressDetailPlaceholder": "请输入自提点详细地址" |
|||
} |
|||
|
|||
@ -1,12 +1,12 @@ |
|||
{ |
|||
"templateName":"运费模板名称", |
|||
"templateNamePlaceholder":"请输入运费模板名称", |
|||
"createTime":"创建时间", |
|||
"addTemplate":"添加运费模板", |
|||
"updateTemplate":"编辑运费模板", |
|||
"templateDeleteTips":"确定要删除该模板吗?", |
|||
"feeTypeName": "计费类型", |
|||
"freeShipping": "指定区域包邮", |
|||
"open": "启用", |
|||
"close": "关闭" |
|||
} |
|||
"templateName": "运费模板名称", |
|||
"templateNamePlaceholder": "请输入运费模板名称", |
|||
"createTime": "创建时间", |
|||
"addTemplate": "添加运费模板", |
|||
"updateTemplate": "编辑运费模板", |
|||
"templateDeleteTips": "确定要删除该模板吗?", |
|||
"feeTypeName": "计费类型", |
|||
"freeShipping": "指定区域包邮", |
|||
"open": "启用", |
|||
"close": "关闭" |
|||
} |
|||
|
|||
@ -1,39 +1,39 @@ |
|||
{ |
|||
"templateName":"运费模板名称", |
|||
"templateNamePlaceholder":"请输入运费模板名称", |
|||
"createTime":"创建时间", |
|||
"addTemplate":"添加运费模板", |
|||
"updateTemplate":"编辑运费模板", |
|||
"templateDeleteTips":"确定要删除该模板吗?", |
|||
"feeTypeName": "计费类型", |
|||
"isDefault": "默认模板", |
|||
"num": "按件", |
|||
"weight": "按重量", |
|||
"volume": "按体积", |
|||
"feeSetting": "费用设置", |
|||
"selectArea": "选择地区", |
|||
"firstNum": "首件(件)", |
|||
"continueNum": "续件(件)", |
|||
"firstWeight": "首件重量(kg)", |
|||
"fee": "运费(元)", |
|||
"continueFee": "续费(元)", |
|||
"continueWeight": "续件重量(kg)", |
|||
"firstVolume": "首件体积(m³)", |
|||
"continueVolume": "续件体积(m³)", |
|||
"deliveryArea": "配送区域", |
|||
"addDeliveryArea": "添加单独配送区域", |
|||
"freeShipping": "指定区域包邮", |
|||
"freeShippingArea": "包邮区域", |
|||
"addFreeShippingArea": "添加包邮区域", |
|||
"freeShippingAreaTips": "两个条件满足其一便可以包邮", |
|||
"noDelivery": "不配送区域", |
|||
"addNoDelivery": "添加不配送区域", |
|||
"freeShippingNum": "包邮件数", |
|||
"freeShippingWeight": "包邮重量(kg)", |
|||
"freeShippingVolume": "包邮体积(m³)", |
|||
"freeShippingPrice": "包邮金额", |
|||
"areaPlaceholder":"请选择地区", |
|||
"noDeliveryPlaceholder": "请选择不配送的地区", |
|||
"freeShippingPlaceholder": "请选择包邮的地区", |
|||
"notUnderZero": "不能小于等于0" |
|||
} |
|||
"templateName": "运费模板名称", |
|||
"templateNamePlaceholder": "请输入运费模板名称", |
|||
"createTime": "创建时间", |
|||
"addTemplate": "添加运费模板", |
|||
"updateTemplate": "编辑运费模板", |
|||
"templateDeleteTips": "确定要删除该模板吗?", |
|||
"feeTypeName": "计费类型", |
|||
"isDefault": "默认模板", |
|||
"num": "按件", |
|||
"weight": "按重量", |
|||
"volume": "按体积", |
|||
"feeSetting": "费用设置", |
|||
"selectArea": "选择地区", |
|||
"firstNum": "首件(件)", |
|||
"continueNum": "续件(件)", |
|||
"firstWeight": "首件重量(kg)", |
|||
"fee": "运费(元)", |
|||
"continueFee": "续费(元)", |
|||
"continueWeight": "续件重量(kg)", |
|||
"firstVolume": "首件体积(m³)", |
|||
"continueVolume": "续件体积(m³)", |
|||
"deliveryArea": "配送区域", |
|||
"addDeliveryArea": "添加单独配送区域", |
|||
"freeShipping": "指定区域包邮", |
|||
"freeShippingArea": "包邮区域", |
|||
"addFreeShippingArea": "添加包邮区域", |
|||
"freeShippingAreaTips": "两个条件满足其一便可以包邮", |
|||
"noDelivery": "不配送区域", |
|||
"addNoDelivery": "添加不配送区域", |
|||
"freeShippingNum": "包邮件数", |
|||
"freeShippingWeight": "包邮重量(kg)", |
|||
"freeShippingVolume": "包邮体积(m³)", |
|||
"freeShippingPrice": "包邮金额", |
|||
"areaPlaceholder": "请选择地区", |
|||
"noDeliveryPlaceholder": "请选择不配送的地区", |
|||
"freeShippingPlaceholder": "请选择包邮的地区", |
|||
"notUnderZero": "不能小于等于0" |
|||
} |
|||
|
|||
@ -1,15 +1,15 @@ |
|||
{ |
|||
"brandId":"品牌ID", |
|||
"brandIdPlaceholder":"请输入品牌ID", |
|||
"brandName":"品牌名称", |
|||
"brandNamePlaceholder":"请输入品牌名称", |
|||
"logo":"品牌logo", |
|||
"logoPlaceholder":"请输入品牌logo", |
|||
"desc":"品牌介绍", |
|||
"descPlaceholder":"请输入品牌介绍", |
|||
"sort":"排序", |
|||
"sortPlaceholder":"请输入排序", |
|||
"addBrand":"添加商品品牌", |
|||
"updateBrand":"编辑商品品牌", |
|||
"brandDeleteTips":"确定要删除该数据吗?" |
|||
} |
|||
"brandId": "品牌ID", |
|||
"brandIdPlaceholder": "请输入品牌ID", |
|||
"brandName": "品牌名称", |
|||
"brandNamePlaceholder": "请输入品牌名称", |
|||
"logo": "品牌logo", |
|||
"logoPlaceholder": "请输入品牌logo", |
|||
"desc": "品牌介绍", |
|||
"descPlaceholder": "请输入品牌介绍", |
|||
"sort": "排序", |
|||
"sortPlaceholder": "请输入排序", |
|||
"addBrand": "添加商品品牌", |
|||
"updateBrand": "编辑商品品牌", |
|||
"brandDeleteTips": "确定要删除该数据吗?" |
|||
} |
|||
|
|||
@ -1,26 +1,26 @@ |
|||
{ |
|||
"categoryId":"商品分类id", |
|||
"categoryIdPlaceholder":"请输入商品分类id", |
|||
"categoryName":"分类名称", |
|||
"categoryNamePlaceholder":"请输入分类名称", |
|||
"image":"分类图片", |
|||
"imagePlaceholder":"请输入分类图片", |
|||
"pid":"上级分类", |
|||
"pidPlaceholder":"请选择上级分类", |
|||
"categoryFullName":"组装分类名称", |
|||
"categoryFullNamePlaceholder":"请输入组装分类名称", |
|||
"isShow":"是否显示", |
|||
"sort":"排序号", |
|||
"sortPlaceholder":"请输入排序号", |
|||
"addCategory":"添加商品分类", |
|||
"updateCategory":"编辑商品分类", |
|||
"categoryDeleteTips":"确定要删除该数据吗?", |
|||
"categoryDeleteTips1":"子级分类也会删除,确定要删除该数据吗?", |
|||
"spreadGoodsCategory": "推广", |
|||
"goodsCategorySpreadTitle": "商品分类推广", |
|||
"spreadLink": "推广链接", |
|||
"copy": "复制", |
|||
"downloadQrcode": "下载二维码", |
|||
"tabGoodsCategory": "商品分类", |
|||
"tabGoodsCategoryConfig": "分类设置" |
|||
} |
|||
"categoryId": "商品分类id", |
|||
"categoryIdPlaceholder": "请输入商品分类id", |
|||
"categoryName": "分类名称", |
|||
"categoryNamePlaceholder": "请输入分类名称", |
|||
"image": "分类图片", |
|||
"imagePlaceholder": "请输入分类图片", |
|||
"pid": "上级分类", |
|||
"pidPlaceholder": "请选择上级分类", |
|||
"categoryFullName": "组装分类名称", |
|||
"categoryFullNamePlaceholder": "请输入组装分类名称", |
|||
"isShow": "是否显示", |
|||
"sort": "排序号", |
|||
"sortPlaceholder": "请输入排序号", |
|||
"addCategory": "添加商品分类", |
|||
"updateCategory": "编辑商品分类", |
|||
"categoryDeleteTips": "确定要删除该数据吗?", |
|||
"categoryDeleteTips1": "子级分类也会删除,确定要删除该数据吗?", |
|||
"spreadGoodsCategory": "推广", |
|||
"goodsCategorySpreadTitle": "商品分类推广", |
|||
"spreadLink": "推广链接", |
|||
"copy": "复制", |
|||
"downloadQrcode": "下载二维码", |
|||
"tabGoodsCategory": "商品分类", |
|||
"tabGoodsCategoryConfig": "分类设置" |
|||
} |
|||
|
|||
@ -1,27 +1,27 @@ |
|||
{ |
|||
"categoryTemplate":"分类模板", |
|||
"categoryType":"分类类型", |
|||
"categorystyleOne":"一级分类", |
|||
"categorystyleTwo":"二级分类", |
|||
"pageSettings":"页面设置", |
|||
"pageTitle":"页面名称", |
|||
"pageTitlePlaceholder":"请输入页面名称", |
|||
"searchControl":"搜索栏", |
|||
"searchTitle":"搜索栏文字", |
|||
"searchTitlePlaceholder":"请输入搜索栏文字", |
|||
"open":"开启", |
|||
"close":"关闭", |
|||
"goodsStyle":"商品排列", |
|||
"singleCols": "单列", |
|||
"doubleCols": "双列", |
|||
"sort":"商品排序", |
|||
"sortPlaceholder":"请选择商品排序", |
|||
"cartControl":"购物车显示", |
|||
"cartStyle":"购物车样式", |
|||
"cartTextPlaceholder":"请输入购物车按钮文字", |
|||
"cartEvent":"点击按钮", |
|||
"detail": "跳转商品详情", |
|||
"cart": "加入购物车", |
|||
"tabGoodsCategory": "商品分类", |
|||
"tabGoodsCategoryConfig": "分类设置" |
|||
} |
|||
"categoryTemplate": "分类模板", |
|||
"categoryType": "分类类型", |
|||
"categorystyleOne": "一级分类", |
|||
"categorystyleTwo": "二级分类", |
|||
"pageSettings": "页面设置", |
|||
"pageTitle": "页面名称", |
|||
"pageTitlePlaceholder": "请输入页面名称", |
|||
"searchControl": "搜索栏", |
|||
"searchTitle": "搜索栏文字", |
|||
"searchTitlePlaceholder": "请输入搜索栏文字", |
|||
"open": "开启", |
|||
"close": "关闭", |
|||
"goodsStyle": "商品排列", |
|||
"singleCols": "单列", |
|||
"doubleCols": "双列", |
|||
"sort": "商品排序", |
|||
"sortPlaceholder": "请选择商品排序", |
|||
"cartControl": "购物车显示", |
|||
"cartStyle": "购物车样式", |
|||
"cartTextPlaceholder": "请输入购物车按钮文字", |
|||
"cartEvent": "点击按钮", |
|||
"detail": "跳转商品详情", |
|||
"cart": "加入购物车", |
|||
"tabGoodsCategory": "商品分类", |
|||
"tabGoodsCategoryConfig": "分类设置" |
|||
} |
|||
|
|||
@ -1,49 +1,49 @@ |
|||
{ |
|||
"evaluateId":"", |
|||
"evaluateIdPlaceholder":"请输入", |
|||
"orderId":"订单id", |
|||
"orderIdPlaceholder":"请输入订单id", |
|||
"orderGoodsId":"订单项ID", |
|||
"orderGoodsIdPlaceholder":"请输入订单项ID", |
|||
"goodsId":"商品ID", |
|||
"goodsIdPlaceholder":"请选择商品", |
|||
"memberId":"会员ID", |
|||
"memberIdPlaceholder":"请输入会员ID", |
|||
"content":"评价内容", |
|||
"contentPlaceholder":"请输入评价内容", |
|||
"images":"评价图片", |
|||
"imagesPlaceholder":"请输入评价图片", |
|||
"isAnonymous":"是否匿名", |
|||
"anonymous": "匿名", |
|||
"notAnonymous": "不匿名", |
|||
"scores":"评价等级", |
|||
"scoresPlaceholder":"请输入评价分数 1-5", |
|||
"auditName":"审核状态", |
|||
"explainFirst":"商家回复", |
|||
"explainFirstPlaceholder": "请输入商家回复", |
|||
"createTime":"评价时间", |
|||
"createTimePlaceholder":"请输入评价时间", |
|||
"again": "追评", |
|||
"againTime":"追评时间", |
|||
"againTimePlaceholder":"请输入追评时间", |
|||
"isShow":"是否显示", |
|||
"show": "显示", |
|||
"notShow": "不显示", |
|||
"isShowPlaceholder":"请输入是否显示 1显示 2不显示", |
|||
"addEvaluate":"添加自评", |
|||
"updateEvaluate":"编辑商品评价", |
|||
"evaluateDeleteTips":"确定要删除该数据吗?", |
|||
"goodsInfo": "商品信息", |
|||
"memberHead": "会员头像", |
|||
"memberName": "会员名称", |
|||
"memberNamePlaceholder": "请输入会员名称", |
|||
"adopt": "通过", |
|||
"refuse": "拒绝", |
|||
"auditAdoptTips": "确定要通过审核吗?", |
|||
"reply": "回复", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"topping": "置顶", |
|||
"cancelTopping": "取消置顶", |
|||
"memberHeadPlaceholder": "请上传会员头像" |
|||
} |
|||
"evaluateId": "", |
|||
"evaluateIdPlaceholder": "请输入", |
|||
"orderId": "订单id", |
|||
"orderIdPlaceholder": "请输入订单id", |
|||
"orderGoodsId": "订单项ID", |
|||
"orderGoodsIdPlaceholder": "请输入订单项ID", |
|||
"goodsId": "商品ID", |
|||
"goodsIdPlaceholder": "请选择商品", |
|||
"memberId": "会员ID", |
|||
"memberIdPlaceholder": "请输入会员ID", |
|||
"content": "评价内容", |
|||
"contentPlaceholder": "请输入评价内容", |
|||
"images": "评价图片", |
|||
"imagesPlaceholder": "请输入评价图片", |
|||
"isAnonymous": "是否匿名", |
|||
"anonymous": "匿名", |
|||
"notAnonymous": "不匿名", |
|||
"scores": "评价等级", |
|||
"scoresPlaceholder": "请输入评价分数 1-5", |
|||
"auditName": "审核状态", |
|||
"explainFirst": "商家回复", |
|||
"explainFirstPlaceholder": "请输入商家回复", |
|||
"createTime": "评价时间", |
|||
"createTimePlaceholder": "请输入评价时间", |
|||
"again": "追评", |
|||
"againTime": "追评时间", |
|||
"againTimePlaceholder": "请输入追评时间", |
|||
"isShow": "是否显示", |
|||
"show": "显示", |
|||
"notShow": "不显示", |
|||
"isShowPlaceholder": "请输入是否显示 1显示 2不显示", |
|||
"addEvaluate": "添加自评", |
|||
"updateEvaluate": "编辑商品评价", |
|||
"evaluateDeleteTips": "确定要删除该数据吗?", |
|||
"goodsInfo": "商品信息", |
|||
"memberHead": "会员头像", |
|||
"memberName": "会员名称", |
|||
"memberNamePlaceholder": "请输入会员名称", |
|||
"adopt": "通过", |
|||
"refuse": "拒绝", |
|||
"auditAdoptTips": "确定要通过审核吗?", |
|||
"reply": "回复", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"topping": "置顶", |
|||
"cancelTopping": "取消置顶", |
|||
"memberHeadPlaceholder": "请上传会员头像" |
|||
} |
|||
|
|||
@ -1,37 +1,37 @@ |
|||
{ |
|||
"orderId":"订单id", |
|||
"orderGoodsId":"订单项ID", |
|||
"goodsId":"商品ID", |
|||
"memberId":"会员ID", |
|||
"content":"评价内容", |
|||
"images":"评价图片", |
|||
"isAnonymous":"0 匿名 1不匿名", |
|||
"scores":"评价分数 1-5", |
|||
"isAudit":"审核状态 1待审 2通过 3拒绝", |
|||
"explainFirst":"解释内容", |
|||
"againContent":"追评内容", |
|||
"againImages":"追评图片", |
|||
"againExplain":"追评解释", |
|||
"againTime":"追评时间", |
|||
"againIsAudit":"审核状态 1待审 2通过 3拒绝", |
|||
"isShow":"是否显示 1显示 2不显示", |
|||
"orderIdPlaceholder":"请输入订单id", |
|||
"orderGoodsIdPlaceholder":"请输入订单项ID", |
|||
"goodsIdPlaceholder":"请输入商品ID", |
|||
"memberIdPlaceholder":"请输入会员ID", |
|||
"contentPlaceholder":"请输入评价内容", |
|||
"imagesPlaceholder":"请上传评价图片", |
|||
"isAnonymousPlaceholder":"请输入0 匿名 1不匿名", |
|||
"scoresPlaceholder":"请输入评价分数 1-5", |
|||
"isAuditPlaceholder":"请输入审核状态 1待审 2通过 3拒绝", |
|||
"explainFirstPlaceholder":"请输入解释内容", |
|||
"againContentPlaceholder":"请输入追评内容", |
|||
"againImagesPlaceholder":"请上传追评图片", |
|||
"againExplainPlaceholder":"请输入追评解释", |
|||
"againTimePlaceholder":"请输入追评时间", |
|||
"againIsAuditPlaceholder":"请输入审核状态 1待审 2通过 3拒绝", |
|||
"isShowPlaceholder":"请输入是否显示 1显示 2不显示", |
|||
"addEvaluate":"添加商品评价", |
|||
"updateEvaluate":"编辑商品评价", |
|||
"evaluateDeleteTips":"确定要删除该商品评价吗?" |
|||
} |
|||
"orderId": "订单id", |
|||
"orderGoodsId": "订单项ID", |
|||
"goodsId": "商品ID", |
|||
"memberId": "会员ID", |
|||
"content": "评价内容", |
|||
"images": "评价图片", |
|||
"isAnonymous": "0 匿名 1不匿名", |
|||
"scores": "评价分数 1-5", |
|||
"isAudit": "审核状态 1待审 2通过 3拒绝", |
|||
"explainFirst": "解释内容", |
|||
"againContent": "追评内容", |
|||
"againImages": "追评图片", |
|||
"againExplain": "追评解释", |
|||
"againTime": "追评时间", |
|||
"againIsAudit": "审核状态 1待审 2通过 3拒绝", |
|||
"isShow": "是否显示 1显示 2不显示", |
|||
"orderIdPlaceholder": "请输入订单id", |
|||
"orderGoodsIdPlaceholder": "请输入订单项ID", |
|||
"goodsIdPlaceholder": "请输入商品ID", |
|||
"memberIdPlaceholder": "请输入会员ID", |
|||
"contentPlaceholder": "请输入评价内容", |
|||
"imagesPlaceholder": "请上传评价图片", |
|||
"isAnonymousPlaceholder": "请输入0 匿名 1不匿名", |
|||
"scoresPlaceholder": "请输入评价分数 1-5", |
|||
"isAuditPlaceholder": "请输入审核状态 1待审 2通过 3拒绝", |
|||
"explainFirstPlaceholder": "请输入解释内容", |
|||
"againContentPlaceholder": "请输入追评内容", |
|||
"againImagesPlaceholder": "请上传追评图片", |
|||
"againExplainPlaceholder": "请输入追评解释", |
|||
"againTimePlaceholder": "请输入追评时间", |
|||
"againIsAuditPlaceholder": "请输入审核状态 1待审 2通过 3拒绝", |
|||
"isShowPlaceholder": "请输入是否显示 1显示 2不显示", |
|||
"addEvaluate": "添加商品评价", |
|||
"updateEvaluate": "编辑商品评价", |
|||
"evaluateDeleteTips": "确定要删除该商品评价吗?" |
|||
} |
|||
|
|||
@ -1,10 +1,10 @@ |
|||
{ |
|||
"serviceName":"服务名称", |
|||
"serviceNamePlaceholder":"请输入服务名称", |
|||
"desc":"描述", |
|||
"descPlaceholder":"请输入描述", |
|||
"addServe":"添加商品服务", |
|||
"updateServe":"编辑商品服务", |
|||
"serveDeleteTips":"确定要删除该数据吗?", |
|||
"imagePlaceholder": "请上传服务图片" |
|||
} |
|||
"serviceName": "服务名称", |
|||
"serviceNamePlaceholder": "请输入服务名称", |
|||
"desc": "描述", |
|||
"descPlaceholder": "请输入描述", |
|||
"addServe": "添加商品服务", |
|||
"updateServe": "编辑商品服务", |
|||
"serveDeleteTips": "确定要删除该数据吗?", |
|||
"imagePlaceholder": "请上传服务图片" |
|||
} |
|||
|
|||
@ -1,20 +1,20 @@ |
|||
{ |
|||
"realtimeOverview":"实时概况", |
|||
"updateTime":"更新时间:", |
|||
"todayOrderCount":"今日订单数", |
|||
"todayOrderSale":"今日销售额", |
|||
"todayAddMemberCount":"今日退款金额", |
|||
"todayBrowseCount":"今日浏览量", |
|||
"yesterday":"昨日:", |
|||
"orderCount":"订单总数", |
|||
"salesTotal":"销售总额(元)", |
|||
"memberTotal":"退款金额", |
|||
"browseTotal":"总浏览量", |
|||
"agentMatters":"待办事项", |
|||
"waitPayOrder":"待付款订单", |
|||
"waitDeliveryOrder":"待发货订单", |
|||
"waitTakeOrder":"待收货订单", |
|||
"refundOrder":"退款订单", |
|||
"saleGoodsNum":"出售商品数量", |
|||
"warehouseGoodsNum":"仓库商品数量" |
|||
} |
|||
"realtimeOverview": "实时概况", |
|||
"updateTime": "更新时间:", |
|||
"todayOrderCount": "今日订单数", |
|||
"todayOrderSale": "今日销售额", |
|||
"todayAddMemberCount": "今日退款金额", |
|||
"todayBrowseCount": "今日浏览量", |
|||
"yesterday": "昨日:", |
|||
"orderCount": "订单总数", |
|||
"salesTotal": "销售总额(元)", |
|||
"memberTotal": "退款金额", |
|||
"browseTotal": "总浏览量", |
|||
"agentMatters": "待办事项", |
|||
"waitPayOrder": "待付款订单", |
|||
"waitDeliveryOrder": "待发货订单", |
|||
"waitTakeOrder": "待收货订单", |
|||
"refundOrder": "退款订单", |
|||
"saleGoodsNum": "出售商品数量", |
|||
"warehouseGoodsNum": "仓库商品数量" |
|||
} |
|||
|
|||
@ -1,42 +1,42 @@ |
|||
{ |
|||
"addCoupon": "添加优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请如:XXX优惠券,最多20个字", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"remainCount": "剩余数量", |
|||
"limitCount": "已领取数量", |
|||
"receive": "领取记录", |
|||
"user": "是", |
|||
"grant": "否", |
|||
"limit": "限量", |
|||
"unlimited": "不限量", |
|||
"receiveNumber": "发放数量", |
|||
"pricePlaceholder": "请输入优惠券面值", |
|||
"remainCountPlaceholder": "最多发放100000张", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"threshold": "使用门槛", |
|||
"minConditionMoneyPlaceholder": "请输入优惠券的最低消费金额", |
|||
"userLimitCount": "限领张数", |
|||
"userLimitCountPlaceholder": "请输入限领张数", |
|||
"receiveTime": "领取时间", |
|||
"limitedTime": "限时", |
|||
"unlimitedTime": "不限时", |
|||
"days":"天数", |
|||
"times": "固定时间", |
|||
"validType": "有效期", |
|||
"lengthPlaceholder": "请输入使用时间", |
|||
"status": "状态", |
|||
"open": "开启", |
|||
"close": "关闭", |
|||
"cancel": "取消", |
|||
"save": "保存", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"validTimePlaceholder": "用券截止时间", |
|||
"arrivalTimePlaceholder": "领券截止时间" |
|||
} |
|||
"addCoupon": "添加优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请如:XXX优惠券,最多20个字", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"remainCount": "剩余数量", |
|||
"limitCount": "已领取数量", |
|||
"receive": "领取记录", |
|||
"user": "是", |
|||
"grant": "否", |
|||
"limit": "限量", |
|||
"unlimited": "不限量", |
|||
"receiveNumber": "发放数量", |
|||
"pricePlaceholder": "请输入优惠券面值", |
|||
"remainCountPlaceholder": "最多发放100000张", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"threshold": "使用门槛", |
|||
"minConditionMoneyPlaceholder": "请输入优惠券的最低消费金额", |
|||
"userLimitCount": "限领张数", |
|||
"userLimitCountPlaceholder": "请输入限领张数", |
|||
"receiveTime": "领取时间", |
|||
"limitedTime": "限时", |
|||
"unlimitedTime": "不限时", |
|||
"days": "天数", |
|||
"times": "固定时间", |
|||
"validType": "有效期", |
|||
"lengthPlaceholder": "请输入使用时间", |
|||
"status": "状态", |
|||
"open": "开启", |
|||
"close": "关闭", |
|||
"cancel": "取消", |
|||
"save": "保存", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"validTimePlaceholder": "用券截止时间", |
|||
"arrivalTimePlaceholder": "领券截止时间" |
|||
} |
|||
|
|||
@ -1,42 +1,42 @@ |
|||
{ |
|||
"editCoupon": "编辑优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请如:XXX优惠券,最多20个字", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"remainCount": "剩余数量", |
|||
"limitCount": "已领取数量", |
|||
"receive": "领取记录", |
|||
"user": "是", |
|||
"grant": "否", |
|||
"limit": "限量", |
|||
"unlimited": "不限量", |
|||
"receiveNumber": "发放数量", |
|||
"pricePlaceholder": "请输入优惠券面值", |
|||
"remainCountPlaceholder": "最多发放100000张", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"threshold": "使用门槛", |
|||
"minConditionMoneyPlaceholder": "请输入优惠券的最低消费金额", |
|||
"userLimitCount": "限领张数", |
|||
"userLimitCountPlaceholder": "请输入限领张数", |
|||
"receiveTime": "领取时间", |
|||
"limitedTime": "限时", |
|||
"unlimitedTime": "不限时", |
|||
"days":"天数", |
|||
"times": "固定时间", |
|||
"validType": "使用时间", |
|||
"lengthPlaceholder": "请输入使用时间", |
|||
"status": "状态", |
|||
"open": "开启", |
|||
"close": "关闭", |
|||
"cancel": "取消", |
|||
"save": "保存", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"validTimePlaceholder": "用券截止时间", |
|||
"arrivalTimePlaceholder": "领券截止时间" |
|||
} |
|||
"editCoupon": "编辑优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请如:XXX优惠券,最多20个字", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"remainCount": "剩余数量", |
|||
"limitCount": "已领取数量", |
|||
"receive": "领取记录", |
|||
"user": "是", |
|||
"grant": "否", |
|||
"limit": "限量", |
|||
"unlimited": "不限量", |
|||
"receiveNumber": "发放数量", |
|||
"pricePlaceholder": "请输入优惠券面值", |
|||
"remainCountPlaceholder": "最多发放100000张", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"threshold": "使用门槛", |
|||
"minConditionMoneyPlaceholder": "请输入优惠券的最低消费金额", |
|||
"userLimitCount": "限领张数", |
|||
"userLimitCountPlaceholder": "请输入限领张数", |
|||
"receiveTime": "领取时间", |
|||
"limitedTime": "限时", |
|||
"unlimitedTime": "不限时", |
|||
"days": "天数", |
|||
"times": "固定时间", |
|||
"validType": "使用时间", |
|||
"lengthPlaceholder": "请输入使用时间", |
|||
"status": "状态", |
|||
"open": "开启", |
|||
"close": "关闭", |
|||
"cancel": "取消", |
|||
"save": "保存", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"validTimePlaceholder": "用券截止时间", |
|||
"arrivalTimePlaceholder": "领券截止时间" |
|||
} |
|||
|
|||
@ -1,47 +1,47 @@ |
|||
{ |
|||
"addCoupon": "添加优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请输入优惠券名称", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"sumCount": "剩余数量/发放数量", |
|||
"remainCount": "已领用/已使用", |
|||
"receive": "领取记录", |
|||
"edit": "编辑", |
|||
"Status": "是否关闭领取", |
|||
"threshold": "使用门槛", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"couponDeleteTips": "确定要删除该优惠券吗?", |
|||
"couponColseTips": "确定要关闭该优惠券吗?关闭后将不可领取,若会员已领取将变为失效", |
|||
"validType": "有效期", |
|||
"statusName":"状态", |
|||
"receiveTypeTime": "领取有效期", |
|||
"spreadGoods":"推广", |
|||
"close":"关闭", |
|||
"couponSpreadTitle":"优惠券推广", |
|||
"downloadQrcode": "下载二维码", |
|||
"spreadLink": "推广链接", |
|||
"receiveUseCount": "已使用", |
|||
"addCoupon": "添加优惠券", |
|||
"title": "名称", |
|||
"titlePlaceholder": "请输入优惠券名称", |
|||
"type": "类型", |
|||
"price": "面值", |
|||
"receiveType": "是否手动领取", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"sumCount": "剩余数量/发放数量", |
|||
"remainCount": "已领用/已使用", |
|||
"receive": "领取记录", |
|||
"edit": "编辑", |
|||
"Status": "是否关闭领取", |
|||
"threshold": "使用门槛", |
|||
"reduction": "满减券", |
|||
"noThreshold": "无门槛券", |
|||
"couponDeleteTips": "确定要删除该优惠券吗?", |
|||
"couponColseTips": "确定要关闭该优惠券吗?关闭后将不可领取,若会员已领取将变为失效", |
|||
"validType": "有效期", |
|||
"statusName": "状态", |
|||
"receiveTypeTime": "领取有效期", |
|||
"spreadGoods": "推广", |
|||
"close": "关闭", |
|||
"couponSpreadTitle": "优惠券推广", |
|||
"downloadQrcode": "下载二维码", |
|||
"spreadLink": "推广链接", |
|||
"receiveUseCount": "已使用", |
|||
|
|||
"collectionCoupon":"领取记录", |
|||
"collectionTtitle": "优惠券名称", |
|||
"userName": "领用会员", |
|||
"collectionReceiveType": "领用方式", |
|||
"createTime": "领取时间", |
|||
"expireTime": "到期时间", |
|||
"status":"当前状态", |
|||
"useTime": "使用时间", |
|||
"validity":"使用有效期", |
|||
"mobile": "手机号", |
|||
"memberInfo": "会员信息", |
|||
"memberInfoPlaceholder":"请输入会员昵称/手机号", |
|||
"collectionSumCount": "发放数量", |
|||
"couponInfo": "优惠券基本信息", |
|||
"receiveCount":"已领取", |
|||
"receiveExpireCount":"已过期", |
|||
"showOrder": "查看订单" |
|||
} |
|||
"collectionCoupon": "领取记录", |
|||
"collectionTtitle": "优惠券名称", |
|||
"userName": "领用会员", |
|||
"collectionReceiveType": "领用方式", |
|||
"createTime": "领取时间", |
|||
"expireTime": "到期时间", |
|||
"status": "当前状态", |
|||
"useTime": "使用时间", |
|||
"validity": "使用有效期", |
|||
"mobile": "手机号", |
|||
"memberInfo": "会员信息", |
|||
"memberInfoPlaceholder": "请输入会员昵称/手机号", |
|||
"collectionSumCount": "发放数量", |
|||
"couponInfo": "优惠券基本信息", |
|||
"receiveCount": "已领取", |
|||
"receiveExpireCount": "已过期", |
|||
"showOrder": "查看订单" |
|||
} |
|||
|
|||
@ -1,38 +1,38 @@ |
|||
{ |
|||
"editDiscount":"添加限时折扣", |
|||
"name": "活动名称", |
|||
"namePlaceholder":"请输入活动名称", |
|||
"nameTip":"活动标题用于在手机或者电脑前端,建议输入长度不要大于5", |
|||
"title":"标题", |
|||
"titlePlaceholder":"请输入活动标题", |
|||
"titleTip":"活动标题用户展示在手机或者电脑前端展示使用,建议输入长度不要大于5", |
|||
"activityTime": "活动时间", |
|||
"discountTimePlaceholder":"请选择活动时间", |
|||
"selectProduct": "选择商品", |
|||
"selectProductPlaceholder": "请选择商品", |
|||
"noSpaceAllowed": "内容不能为空", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"discountType":"折扣类型", |
|||
"price":"原价", |
|||
"discounts":"打折", |
|||
"discountsTips":"[打折]格式错误", |
|||
"discountsTipsTwo":"打折折扣不可小于0", |
|||
"discountsTipsThree":"打折折扣不可大于9.9", |
|||
"discountsPlaceholder":"请输入打折折扣", |
|||
"reduceMoney":"减钱", |
|||
"reduceMoneyTips":"[减钱]格式错误", |
|||
"reduceMoneyTipsTwo":"减钱金额不可小于等于0", |
|||
"reduceMoneyTipsThree":"减钱金额不可大于等于原价金额", |
|||
"reduceMoneyPlaceholder":"请输入减钱金额", |
|||
"promotional":"促销价", |
|||
"promotionalTips":"[促销价]格式错误", |
|||
"promotionalTipsTwo":"促销价金额不可小于等于0", |
|||
"promotionalTipsThree":"促销价金额不可大于等于原价金额", |
|||
"promotionalPlaceholder":"请输入促销价", |
|||
"delete":"删除", |
|||
"enabled":"设为参与", |
|||
"noEnabled":"设为不参与", |
|||
"skuDiscountSettings":"规格折扣设置", |
|||
"skuDiscountSettingsPlaceholder":"请输入规格折扣设置" |
|||
"editDiscount": "添加限时折扣", |
|||
"name": "活动名称", |
|||
"namePlaceholder": "请输入活动名称", |
|||
"nameTip": "活动标题用于在手机或者电脑前端,建议输入长度不要大于5", |
|||
"title": "标题", |
|||
"titlePlaceholder": "请输入活动标题", |
|||
"titleTip": "活动标题用户展示在手机或者电脑前端展示使用,建议输入长度不要大于5", |
|||
"activityTime": "活动时间", |
|||
"discountTimePlaceholder": "请选择活动时间", |
|||
"selectProduct": "选择商品", |
|||
"selectProductPlaceholder": "请选择商品", |
|||
"noSpaceAllowed": "内容不能为空", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"discountType": "折扣类型", |
|||
"price": "原价", |
|||
"discounts": "打折", |
|||
"discountsTips": "[打折]格式错误", |
|||
"discountsTipsTwo": "打折折扣不可小于0", |
|||
"discountsTipsThree": "打折折扣不可大于9.9", |
|||
"discountsPlaceholder": "请输入打折折扣", |
|||
"reduceMoney": "减钱", |
|||
"reduceMoneyTips": "[减钱]格式错误", |
|||
"reduceMoneyTipsTwo": "减钱金额不可小于等于0", |
|||
"reduceMoneyTipsThree": "减钱金额不可大于等于原价金额", |
|||
"reduceMoneyPlaceholder": "请输入减钱金额", |
|||
"promotional": "促销价", |
|||
"promotionalTips": "[促销价]格式错误", |
|||
"promotionalTipsTwo": "促销价金额不可小于等于0", |
|||
"promotionalTipsThree": "促销价金额不可大于等于原价金额", |
|||
"promotionalPlaceholder": "请输入促销价", |
|||
"delete": "删除", |
|||
"enabled": "设为参与", |
|||
"noEnabled": "设为不参与", |
|||
"skuDiscountSettings": "规格折扣设置", |
|||
"skuDiscountSettingsPlaceholder": "请输入规格折扣设置" |
|||
} |
|||
|
|||
@ -1,8 +1,8 @@ |
|||
{ |
|||
"headTitle":"顶部广告图", |
|||
"image":"图片上传", |
|||
"imagePlaceholder":"请上传图片", |
|||
"toLink":"跳转链接", |
|||
"toLinkPlaceholder":"请输入跳转链接", |
|||
"addConfigList":"添加广告图" |
|||
} |
|||
"headTitle": "顶部广告图", |
|||
"image": "图片上传", |
|||
"imagePlaceholder": "请上传图片", |
|||
"toLink": "跳转链接", |
|||
"toLinkPlaceholder": "请输入跳转链接", |
|||
"addConfigList": "添加广告图" |
|||
} |
|||
|
|||
@ -1,38 +1,38 @@ |
|||
{ |
|||
"editDiscount":"编辑限时折扣", |
|||
"name": "活动名称", |
|||
"namePlaceholder":"请输入活动名称", |
|||
"nameTip":"活动名称用于展示在商家后台管理", |
|||
"title":"标题", |
|||
"titlePlaceholder":"请输入活动标题", |
|||
"titleTip":"活动标题用于在手机或者电脑前端,建议输入长度不要大于5", |
|||
"activityTime": "活动时间", |
|||
"discountTimePlaceholder":"请选择活动时间", |
|||
"noSpaceAllowed":"内容不能为空", |
|||
"selectProduct": "选择商品", |
|||
"selectProductPlaceholder": "请选择商品", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"discountType":"折扣类型", |
|||
"price":"原价", |
|||
"discounts":"打折", |
|||
"discountsTips":"[打折]格式错误", |
|||
"discountsTipsTwo":"打折折扣不可小于0", |
|||
"discountsTipsThree":"打折折扣不可大于9.9", |
|||
"discountsPlaceholder":"请输入打折折扣", |
|||
"reduceMoney":"减钱", |
|||
"reduceMoneyTips":"[减钱]格式错误", |
|||
"reduceMoneyTipsTwo":"减钱金额不可小于等于0", |
|||
"reduceMoneyTipsThree":"减钱金额不可大于等于原价金额", |
|||
"reduceMoneyPlaceholder":"请输入减钱金额", |
|||
"promotional":"促销价", |
|||
"promotionalTips":"[促销价]格式错误", |
|||
"promotionalTipsTwo":"促销价金额不可小于等于0", |
|||
"promotionalTipsThree":"促销价金额不可大于等于原价金额", |
|||
"promotionalPlaceholder":"请输入促销价", |
|||
"delete":"删除", |
|||
"enabled":"设为参与", |
|||
"noEnabled":"设为不参与", |
|||
"skuDiscountSettings":"规格折扣设置", |
|||
"skuDiscountSettingsPlaceholder":"请输入规格折扣设置" |
|||
"editDiscount": "编辑限时折扣", |
|||
"name": "活动名称", |
|||
"namePlaceholder": "请输入活动名称", |
|||
"nameTip": "活动名称用于展示在商家后台管理", |
|||
"title": "标题", |
|||
"titlePlaceholder": "请输入活动标题", |
|||
"titleTip": "活动标题用于在手机或者电脑前端,建议输入长度不要大于5", |
|||
"activityTime": "活动时间", |
|||
"discountTimePlaceholder": "请选择活动时间", |
|||
"noSpaceAllowed": "内容不能为空", |
|||
"selectProduct": "选择商品", |
|||
"selectProductPlaceholder": "请选择商品", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"discountType": "折扣类型", |
|||
"price": "原价", |
|||
"discounts": "打折", |
|||
"discountsTips": "[打折]格式错误", |
|||
"discountsTipsTwo": "打折折扣不可小于0", |
|||
"discountsTipsThree": "打折折扣不可大于9.9", |
|||
"discountsPlaceholder": "请输入打折折扣", |
|||
"reduceMoney": "减钱", |
|||
"reduceMoneyTips": "[减钱]格式错误", |
|||
"reduceMoneyTipsTwo": "减钱金额不可小于等于0", |
|||
"reduceMoneyTipsThree": "减钱金额不可大于等于原价金额", |
|||
"reduceMoneyPlaceholder": "请输入减钱金额", |
|||
"promotional": "促销价", |
|||
"promotionalTips": "[促销价]格式错误", |
|||
"promotionalTipsTwo": "促销价金额不可小于等于0", |
|||
"promotionalTipsThree": "促销价金额不可大于等于原价金额", |
|||
"promotionalPlaceholder": "请输入促销价", |
|||
"delete": "删除", |
|||
"enabled": "设为参与", |
|||
"noEnabled": "设为不参与", |
|||
"skuDiscountSettings": "规格折扣设置", |
|||
"skuDiscountSettingsPlaceholder": "请输入规格折扣设置" |
|||
} |
|||
|
|||
@ -1,50 +1,50 @@ |
|||
{ |
|||
"addDiscount":"添加限时折扣", |
|||
"name":"名称", |
|||
"namePlaceholder":"请输入活动名称", |
|||
"title":"标题", |
|||
"status":"状态", |
|||
"statusPlaceholder":"请选择状态", |
|||
"paymentAmount":"支付金额", |
|||
"memberCount":"会员数", |
|||
"orderCount":"订单数", |
|||
"discountTime":"活动时间", |
|||
"detail":"详情", |
|||
"close":"关闭", |
|||
"closeTips":"活动正在进行中,是否确认关闭当前活动?", |
|||
"deleteTips":"是否确认删除当前活动", |
|||
"baseInfo": "基础信息", |
|||
"createTime": "创建时间", |
|||
"startTime": "活动开始时间", |
|||
"endTime": "活动结束时间", |
|||
"keywordPlaceholder": "请输入商品名称", |
|||
"keyword": "商品名称", |
|||
"goodsInfo": "商品信息", |
|||
"price": "商品价格", |
|||
"activeOrderMoney": "累计订单金额", |
|||
"activeOrderNum": "累计订单数", |
|||
"activeMemberNum": "参与会员数", |
|||
"activeSuccessNum": "支付销量", |
|||
"orderInfo": "订单编号", |
|||
"payTime": "支付时间", |
|||
"orderNo": "订单编号", |
|||
"orderMoney": "订单金额", |
|||
"buyInfo": "买家/收货人", |
|||
"payType": "支付类型", |
|||
"orderStatus": "订单状态", |
|||
"toBePaid": "待支付", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"consumptionMoney": "消费总额", |
|||
"participationNum": "参与次数", |
|||
"orderTime": "最后下单时间", |
|||
"memberInfo": "会员信息", |
|||
"activeName": "活动名称", |
|||
"participationMemberCount": "参与会员数", |
|||
"payOrderCount": "支付订单数", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间" |
|||
} |
|||
"addDiscount": "添加限时折扣", |
|||
"name": "名称", |
|||
"namePlaceholder": "请输入活动名称", |
|||
"title": "标题", |
|||
"status": "状态", |
|||
"statusPlaceholder": "请选择状态", |
|||
"paymentAmount": "支付金额", |
|||
"memberCount": "会员数", |
|||
"orderCount": "订单数", |
|||
"discountTime": "活动时间", |
|||
"detail": "详情", |
|||
"close": "关闭", |
|||
"closeTips": "活动正在进行中,是否确认关闭当前活动?", |
|||
"deleteTips": "是否确认删除当前活动", |
|||
"baseInfo": "基础信息", |
|||
"createTime": "创建时间", |
|||
"startTime": "活动开始时间", |
|||
"endTime": "活动结束时间", |
|||
"keywordPlaceholder": "请输入商品名称", |
|||
"keyword": "商品名称", |
|||
"goodsInfo": "商品信息", |
|||
"price": "商品价格", |
|||
"activeOrderMoney": "累计订单金额", |
|||
"activeOrderNum": "累计订单数", |
|||
"activeMemberNum": "参与会员数", |
|||
"activeSuccessNum": "支付销量", |
|||
"orderInfo": "订单编号", |
|||
"payTime": "支付时间", |
|||
"orderNo": "订单编号", |
|||
"orderMoney": "订单金额", |
|||
"buyInfo": "买家/收货人", |
|||
"payType": "支付类型", |
|||
"orderStatus": "订单状态", |
|||
"toBePaid": "待支付", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"consumptionMoney": "消费总额", |
|||
"participationNum": "参与次数", |
|||
"orderTime": "最后下单时间", |
|||
"memberInfo": "会员信息", |
|||
"activeName": "活动名称", |
|||
"participationMemberCount": "参与会员数", |
|||
"payOrderCount": "支付订单数", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间" |
|||
} |
|||
|
|||
@ -1,66 +1,66 @@ |
|||
{ |
|||
"addGoods":"添加商品", |
|||
"baseInfo":"基础设置", |
|||
"goodsType":"商品类型", |
|||
"goodsName":"商品名称", |
|||
"goodsNamePlaceholder":"请输入商品名称", |
|||
"goodsTitle":"副标题", |
|||
"goodsTitlePlaceholder":"请输入副标题", |
|||
"image":"商品图片", |
|||
"imagePlaceholder":"请选择商品图片", |
|||
"selectProduct": "选择商品", |
|||
"selectGoodsPlaceholder": "请选择商品", |
|||
"goodsStatus":"商品状态", |
|||
"goodsSelect":"选择商品", |
|||
"redemptionSettings":"积分设置", |
|||
"addGoods": "添加商品", |
|||
"baseInfo": "基础设置", |
|||
"goodsType": "商品类型", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"goodsTitle": "副标题", |
|||
"goodsTitlePlaceholder": "请输入副标题", |
|||
"image": "商品图片", |
|||
"imagePlaceholder": "请选择商品图片", |
|||
"selectProduct": "选择商品", |
|||
"selectGoodsPlaceholder": "请选择商品", |
|||
"goodsStatus": "商品状态", |
|||
"goodsSelect": "选择商品", |
|||
"redemptionSettings": "积分设置", |
|||
|
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"goodsSelectPopupGoodsInfo":"商品信息", |
|||
"price":"销售价", |
|||
"stock":"兑换库存", |
|||
"stockPlaceholder":"请输入兑换库存", |
|||
"stockTips":"[兑换库存]格式错误", |
|||
"stockTipsTwo":"兑换库存不可小于等于0", |
|||
"stockTipsThree":"兑换限制数量不可大于商品库存", |
|||
"limit":"兑换限制", |
|||
"limitPlaceholder":"请输入兑换限制", |
|||
"limitTips":"[兑换限制]格式错误", |
|||
"limitTipsTwo":"兑换限制数量不可小于等于0", |
|||
"limitTipsThree":"兑换限制数量不能大于兑换库存", |
|||
"limitUnit":"件/人", |
|||
"integralUnit":"积分", |
|||
"prickUnit":"元", |
|||
"pointPlaceholder":"请输入积分积分", |
|||
"pointTips":"[积分]格式错误", |
|||
"pointTipsTwo":"积分不可小于等于0", |
|||
"money":"兑换价", |
|||
"newPrice":"价格", |
|||
"moneyTips":"[价格]格式错误", |
|||
"moneyTipsTwo":"价格不可小于0", |
|||
"limitRules":"每人每单可兑换件数", |
|||
|
|||
"couponSelect":"选择优惠券", |
|||
"couponSelectPlaceholder":"请选择优惠券", |
|||
"couponName":"优惠券名称", |
|||
"couponType":"类型", |
|||
"couponPrice":"面值", |
|||
"sumCount":"总库存", |
|||
"threshold": "使用门槛", |
|||
"validType": "有效期", |
|||
"receiveTypeTime": "领取有效期", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"goodsSelectPopupGoodsInfo": "商品信息", |
|||
"price": "销售价", |
|||
"stock": "兑换库存", |
|||
"stockPlaceholder": "请输入兑换库存", |
|||
"stockTips": "[兑换库存]格式错误", |
|||
"stockTipsTwo": "兑换库存不可小于等于0", |
|||
"stockTipsThree": "兑换限制数量不可大于商品库存", |
|||
"limit": "兑换限制", |
|||
"limitPlaceholder": "请输入兑换限制", |
|||
"limitTips": "[兑换限制]格式错误", |
|||
"limitTipsTwo": "兑换限制数量不可小于等于0", |
|||
"limitTipsThree": "兑换限制数量不能大于兑换库存", |
|||
"limitUnit": "件/人", |
|||
"integralUnit": "积分", |
|||
"prickUnit": "元", |
|||
"pointPlaceholder": "请输入积分积分", |
|||
"pointTips": "[积分]格式错误", |
|||
"pointTipsTwo": "积分不可小于等于0", |
|||
"money": "兑换价", |
|||
"newPrice": "价格", |
|||
"moneyTips": "[价格]格式错误", |
|||
"moneyTipsTwo": "价格不可小于0", |
|||
"limitRules": "每人每单可兑换件数", |
|||
|
|||
"balance":"兑换余额", |
|||
"balancePlaceholder":"请输入兑换余额", |
|||
"balanceTips":"[兑换余额]格式错误", |
|||
"balanceTipsTwo":"兑换余额不可小于等于0", |
|||
"balanceType":"余额类型", |
|||
"couponSelect": "选择优惠券", |
|||
"couponSelectPlaceholder": "请选择优惠券", |
|||
"couponName": "优惠券名称", |
|||
"couponType": "类型", |
|||
"couponPrice": "面值", |
|||
"sumCount": "总库存", |
|||
"threshold": "使用门槛", |
|||
"validType": "有效期", |
|||
"receiveTypeTime": "领取有效期", |
|||
|
|||
"goodsSkuTitle":"选择商品规格", |
|||
"goodsSkuPlaceholder":"请选择商品规格", |
|||
"goodsStock":"库存", |
|||
"enabled":"设为参与", |
|||
"noEnabled":"设为不参与", |
|||
"noEnabledTip":"请至少设置一个规格参与", |
|||
"goodsDetail":"商品详情" |
|||
} |
|||
"balance": "兑换余额", |
|||
"balancePlaceholder": "请输入兑换余额", |
|||
"balanceTips": "[兑换余额]格式错误", |
|||
"balanceTipsTwo": "兑换余额不可小于等于0", |
|||
"balanceType": "余额类型", |
|||
|
|||
"goodsSkuTitle": "选择商品规格", |
|||
"goodsSkuPlaceholder": "请选择商品规格", |
|||
"goodsStock": "库存", |
|||
"enabled": "设为参与", |
|||
"noEnabled": "设为不参与", |
|||
"noEnabledTip": "请至少设置一个规格参与", |
|||
"goodsDetail": "商品详情" |
|||
} |
|||
|
|||
@ -1,67 +1,66 @@ |
|||
{ |
|||
"editGoods":"编辑商品", |
|||
"baseInfo":"基础设置", |
|||
"goodsType":"商品类型", |
|||
"goodsName":"商品名称", |
|||
"goodsNamePlaceholder":"请输入商品名称", |
|||
"goodsTitle":"副标题", |
|||
"goodsTitlePlaceholder":"请输入副标题", |
|||
"image":"商品图片", |
|||
"imagePlaceholder":"请选择商品图片", |
|||
"selectProduct": "选择商品", |
|||
"selectGoodsPlaceholder": "请选择商品", |
|||
"goodsStatus":"商品状态", |
|||
"goodsSelect":"选择商品", |
|||
"redemptionSettings":"积分设置", |
|||
"editGoods": "编辑商品", |
|||
"baseInfo": "基础设置", |
|||
"goodsType": "商品类型", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"goodsTitle": "副标题", |
|||
"goodsTitlePlaceholder": "请输入副标题", |
|||
"image": "商品图片", |
|||
"imagePlaceholder": "请选择商品图片", |
|||
"selectProduct": "选择商品", |
|||
"selectGoodsPlaceholder": "请选择商品", |
|||
"goodsStatus": "商品状态", |
|||
"goodsSelect": "选择商品", |
|||
"redemptionSettings": "积分设置", |
|||
|
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"goodsSelectPopupGoodsInfo":"商品信息", |
|||
"price":"销售价", |
|||
"stock":"兑换库存", |
|||
"stockPlaceholder":"请输入兑换库存", |
|||
"stockTips":"[兑换库存]格式错误", |
|||
"stockTipsTwo":"兑换库存不可小于等于0", |
|||
"stockTipsThree":"兑换限制数量不可大于商品库存", |
|||
"limit":"兑换限制", |
|||
"limitPlaceholder":"请输入兑换限制", |
|||
"limitTips":"[兑换限制]格式错误", |
|||
"limitTipsTwo":"兑换限制数量不可小于等于0", |
|||
"limitTipsThree":"兑换限制数量不能大于兑换库存", |
|||
"limitUnit":"件/人", |
|||
"integralUnit":"积分", |
|||
"prickUnit":"元", |
|||
"pointPlaceholder":"请输入积分积分", |
|||
"pointTips":"[积分]格式错误", |
|||
"pointTipsTwo":"积分不可小于等于0", |
|||
"money":"兑换价", |
|||
"newPrice":"价格", |
|||
"moneyTips":"[价格]格式错误", |
|||
"moneyTipsTwo":"价格不可小于0", |
|||
"limitRules":"每人每单可兑换件数", |
|||
"batchOperation": "批量设置", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"goodsSelectPopupGoodsInfo": "商品信息", |
|||
"price": "销售价", |
|||
"stock": "兑换库存", |
|||
"stockPlaceholder": "请输入兑换库存", |
|||
"stockTips": "[兑换库存]格式错误", |
|||
"stockTipsTwo": "兑换库存不可小于等于0", |
|||
"stockTipsThree": "兑换限制数量不可大于商品库存", |
|||
"limit": "兑换限制", |
|||
"limitPlaceholder": "请输入兑换限制", |
|||
"limitTips": "[兑换限制]格式错误", |
|||
"limitTipsTwo": "兑换限制数量不可小于等于0", |
|||
"limitTipsThree": "兑换限制数量不能大于兑换库存", |
|||
"limitUnit": "件/人", |
|||
"integralUnit": "积分", |
|||
"prickUnit": "元", |
|||
"pointPlaceholder": "请输入积分积分", |
|||
"pointTips": "[积分]格式错误", |
|||
"pointTipsTwo": "积分不可小于等于0", |
|||
"money": "兑换价", |
|||
"newPrice": "价格", |
|||
"moneyTips": "[价格]格式错误", |
|||
"moneyTipsTwo": "价格不可小于0", |
|||
"limitRules": "每人每单可兑换件数", |
|||
|
|||
|
|||
"couponSelect":"选择优惠券", |
|||
"couponSelectPlaceholder":"请选择优惠券", |
|||
"couponName":"优惠券名称", |
|||
"couponType":"类型", |
|||
"couponPrice":"面值", |
|||
"sumCount":"总库存", |
|||
"threshold": "使用门槛", |
|||
"validType": "有效期", |
|||
"receiveTypeTime": "领取有效期", |
|||
"couponSelect": "选择优惠券", |
|||
"couponSelectPlaceholder": "请选择优惠券", |
|||
"couponName": "优惠券名称", |
|||
"couponType": "类型", |
|||
"couponPrice": "面值", |
|||
"sumCount": "总库存", |
|||
"threshold": "使用门槛", |
|||
"validType": "有效期", |
|||
"receiveTypeTime": "领取有效期", |
|||
|
|||
"balance":"兑换余额", |
|||
"balancePlaceholder":"请输入兑换余额", |
|||
"balanceTips":"[兑换余额]格式错误", |
|||
"balanceTipsTwo":"兑换余额不可小于等于0", |
|||
"balanceType":"余额类型", |
|||
"balance": "兑换余额", |
|||
"balancePlaceholder": "请输入兑换余额", |
|||
"balanceTips": "[兑换余额]格式错误", |
|||
"balanceTipsTwo": "兑换余额不可小于等于0", |
|||
"balanceType": "余额类型", |
|||
|
|||
"goodsSkuTitle":"选择商品规格", |
|||
"goodsSkuPlaceholder":"请选择商品规格", |
|||
"goodsStock":"库存", |
|||
"enabled":"设为参与", |
|||
"noEnabled":"设为不参与", |
|||
"noEnabledTip":"请至少设置一个规格参与", |
|||
"goodsDetail":"商品详情" |
|||
} |
|||
"goodsSkuTitle": "选择商品规格", |
|||
"goodsSkuPlaceholder": "请选择商品规格", |
|||
"goodsStock": "库存", |
|||
"enabled": "设为参与", |
|||
"noEnabled": "设为不参与", |
|||
"noEnabledTip": "请至少设置一个规格参与", |
|||
"goodsDetail": "商品详情" |
|||
} |
|||
|
|||
@ -1,27 +1,27 @@ |
|||
{ |
|||
"addGoods":"添加商品", |
|||
"goods":"商品", |
|||
"goodsName":"商品名称", |
|||
"goodsNamePlaceholder":"请输入商品名称", |
|||
"status":"状态", |
|||
"statusPlaceholder":"请选择状态", |
|||
"goodsType":"商品类型", |
|||
"exchangePrice":"兑换价格", |
|||
"pointUnit":"积分", |
|||
"priceUnit":"元", |
|||
"redeemedAndSurplus":"已兑/剩余", |
|||
"deleteTips":"是否确认删除当前商品", |
|||
"createTime":"创建时间", |
|||
"spreadGoods": "推广", |
|||
"copyGoods": "复制", |
|||
"spreadLink": "推广链接", |
|||
"copy": "复制", |
|||
"downloadQrcode": "下载二维码", |
|||
"goodsSpreadTitle": "积分商品推广", |
|||
"up":"上架", |
|||
"upTips":"是否确认上架当前商品", |
|||
"down":"下架", |
|||
"downTips":"是否确认下架当前商品", |
|||
"startDate":"开始时间", |
|||
"endDate":"结束时间" |
|||
} |
|||
"addGoods": "添加商品", |
|||
"goods": "商品", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"status": "状态", |
|||
"statusPlaceholder": "请选择状态", |
|||
"goodsType": "商品类型", |
|||
"exchangePrice": "兑换价格", |
|||
"pointUnit": "积分", |
|||
"priceUnit": "元", |
|||
"redeemedAndSurplus": "已兑/剩余", |
|||
"deleteTips": "是否确认删除当前商品", |
|||
"createTime": "创建时间", |
|||
"spreadGoods": "推广", |
|||
"copyGoods": "复制", |
|||
"spreadLink": "推广链接", |
|||
"copy": "复制", |
|||
"downloadQrcode": "下载二维码", |
|||
"goodsSpreadTitle": "积分商品推广", |
|||
"up": "上架", |
|||
"upTips": "是否确认上架当前商品", |
|||
"down": "下架", |
|||
"downTips": "是否确认下架当前商品", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间" |
|||
} |
|||
|
|||
@ -1,55 +1,55 @@ |
|||
{ |
|||
"orderNo":"订单编号", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"orderMoney": "实付金额(元)", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"piece": "件", |
|||
"activeRefund": "主动退款", |
|||
"notes": "备注", |
|||
"offlinePayment": "线下支付", |
|||
"orderClose": "关闭订单", |
|||
"editPrice": "修改价格", |
|||
"editAddress": "修改地址", |
|||
"sendOutGoods": "发货", |
|||
"confirmTakeDelivery": "确认收货", |
|||
"all": "全部", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"refunding": "退款中", |
|||
"notesDetail": "备注信息", |
|||
|
|||
"delivery": "订单发货", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"goodsName": "商品名称", |
|||
"num": "商品数量", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"deliveryStatusName": "发货状态", |
|||
"fromType": "订单来源", |
|||
"payType": "支付类型", |
|||
"orderInfo": "订单信息", |
|||
"refundStatusName": "退款状态", |
|||
"outTradeNo": "交易流水号", |
|||
"orderNo": "订单编号", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"orderMoney": "实付金额(元)", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"piece": "件", |
|||
"activeRefund": "主动退款", |
|||
"notes": "备注", |
|||
"offlinePayment": "线下支付", |
|||
"orderClose": "关闭订单", |
|||
"editPrice": "修改价格", |
|||
"editAddress": "修改地址", |
|||
"sendOutGoods": "发货", |
|||
"confirmTakeDelivery": "确认收货", |
|||
"all": "全部", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"refunding": "退款中", |
|||
"notesDetail": "备注信息", |
|||
|
|||
"exportOrderType": "导出订单类型", |
|||
"shopOrder": "订单数据表", |
|||
"shopOrderGoods": "订单商品表", |
|||
"point":"积分" |
|||
} |
|||
"delivery": "订单发货", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"goodsName": "商品名称", |
|||
"num": "商品数量", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"deliveryStatusName": "发货状态", |
|||
"fromType": "订单来源", |
|||
"payType": "支付类型", |
|||
"orderInfo": "订单信息", |
|||
"refundStatusName": "退款状态", |
|||
"outTradeNo": "交易流水号", |
|||
|
|||
"exportOrderType": "导出订单类型", |
|||
"shopOrder": "订单数据表", |
|||
"shopOrderGoods": "订单商品表", |
|||
"point": "积分" |
|||
} |
|||
|
|||
@ -1,37 +1,37 @@ |
|||
{ |
|||
"baseInfo": "基础信息", |
|||
"name": "活动名称", |
|||
"title": "标题", |
|||
"status": "状态", |
|||
"paymentAmount": "支付金额", |
|||
"memberCount": "参与会员数", |
|||
"orderCount": "支付订单数", |
|||
"createTime": "创建时间", |
|||
"startTime": "活动开始时间", |
|||
"endTime": "活动结束时间", |
|||
"keywordPlaceholder": "请输入商品名称", |
|||
"keyword": "商品名称", |
|||
"goodsInfo": "商品信息", |
|||
"price": "商品价格", |
|||
"activeOrderMoney": "累计订单金额", |
|||
"activeOrderNum": "累计订单数", |
|||
"activeMemberNum": "参与会员数", |
|||
"activeSuccessNum": "支付销量", |
|||
"orderInfo": "订单编号", |
|||
"payTime": "支付时间", |
|||
"orderNo": "订单编号", |
|||
"orderMoney": "订单金额", |
|||
"buyInfo": "买家/收货人", |
|||
"payType": "支付类型", |
|||
"orderStatus": "订单状态", |
|||
"toBePaid": "待支付", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"consumptionMoney": "消费总额", |
|||
"participationNum": "参与次数", |
|||
"orderTime": "最后下单时间", |
|||
"memberInfo": "会员信息" |
|||
} |
|||
"baseInfo": "基础信息", |
|||
"name": "活动名称", |
|||
"title": "标题", |
|||
"status": "状态", |
|||
"paymentAmount": "支付金额", |
|||
"memberCount": "参与会员数", |
|||
"orderCount": "支付订单数", |
|||
"createTime": "创建时间", |
|||
"startTime": "活动开始时间", |
|||
"endTime": "活动结束时间", |
|||
"keywordPlaceholder": "请输入商品名称", |
|||
"keyword": "商品名称", |
|||
"goodsInfo": "商品信息", |
|||
"price": "商品价格", |
|||
"activeOrderMoney": "累计订单金额", |
|||
"activeOrderNum": "累计订单数", |
|||
"activeMemberNum": "参与会员数", |
|||
"activeSuccessNum": "支付销量", |
|||
"orderInfo": "订单编号", |
|||
"payTime": "支付时间", |
|||
"orderNo": "订单编号", |
|||
"orderMoney": "订单金额", |
|||
"buyInfo": "买家/收货人", |
|||
"payType": "支付类型", |
|||
"orderStatus": "订单状态", |
|||
"toBePaid": "待支付", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"consumptionMoney": "消费总额", |
|||
"participationNum": "参与次数", |
|||
"orderTime": "最后下单时间", |
|||
"memberInfo": "会员信息" |
|||
} |
|||
|
|||
@ -1,45 +1,45 @@ |
|||
{ |
|||
"basicInfoTab":"基础设置", |
|||
"bannerList":"顶部广告图", |
|||
"activeStatus":"是否启用", |
|||
"validityType":"有效期", |
|||
"validityDay":"天数", |
|||
"validityDayPlaceholder":"请输入有效天数", |
|||
"validityDayTips":"有效天数不可小于等于0", |
|||
"validityDayTipsLeft":"达成门槛立即生效,", |
|||
"validityDayTipsRight":"天有效期", |
|||
"validityTime":"固定时间", |
|||
"validityTimePlaceholder":"请选择有效期截止时间", |
|||
"validityTimePlaceholderTwo":"请先选择参与门槛时间", |
|||
"validityTimePlaceholderThree":"有效期截止时间不可小于参与门槛时间", |
|||
"validityTimeTips":"达成门槛立即生效,有效期截止为", |
|||
"validityTimeTipsTwo":"修改有效期将同步更新所有未参与活动用户的结束时间", |
|||
"participationWay":"参与门槛", |
|||
"neverOrder":"从未下过单的会员", |
|||
"assignTimeOrder":"指定时间内未下过单的会员", |
|||
"assignTimeRegister":"指定时间内注册的会员", |
|||
"appointTimePlaceholder":"请选择指定时间", |
|||
"activityGoods":"活动商品", |
|||
"selectGoods":"选择商品", |
|||
"goodsSkuIdsPlaceholder":"请选择商品", |
|||
"limitNum":"限购数量", |
|||
"limitNumPlaceholder":"请输入限购数量", |
|||
"limitNumTips":"限购数量不可小于等于0", |
|||
"limitNumTipsThree":"限购数量不可超过已选商品数量", |
|||
"oldPrice":"原价", |
|||
"newcomerPrice":"新人价", |
|||
"newcomerPricePlaceholder":"请输入新人价", |
|||
"newcomerPriceTips":"[新人价]格式错误", |
|||
"newcomerPriceTipsOne":"新人价不可小于0", |
|||
"newcomerPriceTipsTwo":"新人价不可大于原价", |
|||
"batchOperation":"批量操作", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"activeDesc":"规则说明", |
|||
"activeDescPlaceholder":"请输入规则说明", |
|||
"useDefaultActiveDesc": "使用默认说明", |
|||
"image":"图片上传", |
|||
"imagePlaceholder":"请上传图片", |
|||
"toLink":"跳转链接", |
|||
"toLinkPlaceholder":"请输入跳转链接", |
|||
"addConfigList":"添加广告图" |
|||
} |
|||
"basicInfoTab": "基础设置", |
|||
"bannerList": "顶部广告图", |
|||
"activeStatus": "是否启用", |
|||
"validityType": "有效期", |
|||
"validityDay": "天数", |
|||
"validityDayPlaceholder": "请输入有效天数", |
|||
"validityDayTips": "有效天数不可小于等于0", |
|||
"validityDayTipsLeft": "达成门槛立即生效,", |
|||
"validityDayTipsRight": "天有效期", |
|||
"validityTime": "固定时间", |
|||
"validityTimePlaceholder": "请选择有效期截止时间", |
|||
"validityTimePlaceholderTwo": "请先选择参与门槛时间", |
|||
"validityTimePlaceholderThree": "有效期截止时间不可小于参与门槛时间", |
|||
"validityTimeTips": "达成门槛立即生效,有效期截止为", |
|||
"validityTimeTipsTwo": "修改有效期将同步更新所有未参与活动用户的结束时间", |
|||
"participationWay": "参与门槛", |
|||
"neverOrder": "从未下过单的会员", |
|||
"assignTimeOrder": "指定时间内未下过单的会员", |
|||
"assignTimeRegister": "指定时间内注册的会员", |
|||
"appointTimePlaceholder": "请选择指定时间", |
|||
"activityGoods": "活动商品", |
|||
"selectGoods": "选择商品", |
|||
"goodsSkuIdsPlaceholder": "请选择商品", |
|||
"limitNum": "限购数量", |
|||
"limitNumPlaceholder": "请输入限购数量", |
|||
"limitNumTips": "限购数量不可小于等于0", |
|||
"limitNumTipsThree": "限购数量不可超过已选商品数量", |
|||
"oldPrice": "原价", |
|||
"newcomerPrice": "新人价", |
|||
"newcomerPricePlaceholder": "请输入新人价", |
|||
"newcomerPriceTips": "[新人价]格式错误", |
|||
"newcomerPriceTipsOne": "新人价不可小于0", |
|||
"newcomerPriceTipsTwo": "新人价不可大于原价", |
|||
"batchOperation": "批量操作", |
|||
"batchEmptySelectedGoodsTips": "请选择要操作的商品", |
|||
"activeDesc": "规则说明", |
|||
"activeDescPlaceholder": "请输入规则说明", |
|||
"useDefaultActiveDesc": "使用默认说明", |
|||
"image": "图片上传", |
|||
"imagePlaceholder": "请上传图片", |
|||
"toLink": "跳转链接", |
|||
"toLinkPlaceholder": "请输入跳转链接", |
|||
"addConfigList": "添加广告图" |
|||
} |
|||
|
|||
@ -1,57 +1,57 @@ |
|||
{ |
|||
"orderNo":"订单编号", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"goodsPriceNumberTips": "新人价商品购买数量为1时,单价显示新人价,购买数量大于1时,单价显示原价或折扣价或会员价", |
|||
"orderMoney": "实付金额(元)", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"piece": "件", |
|||
"createTime": "创建时间", |
|||
"activeRefund": "主动退款", |
|||
"notes": "备注", |
|||
"offlinePayment": "线下支付", |
|||
"orderClose": "关闭订单", |
|||
"editPrice": "修改价格", |
|||
"editAddress": "修改地址", |
|||
"sendOutGoods": "发货", |
|||
"confirmTakeDelivery": "确认收货", |
|||
"all": "全部", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"refunding": "退款中", |
|||
"notesDetail": "备注信息", |
|||
|
|||
"delivery": "订单发货", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"goodsName": "商品名称", |
|||
"num": "商品数量", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"deliveryStatusName": "发货状态", |
|||
"fromType": "订单来源", |
|||
"payType": "支付类型", |
|||
"orderInfo": "订单信息", |
|||
"refundStatusName": "退款状态", |
|||
"outTradeNo": "交易流水号", |
|||
"orderNo": "订单编号", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"goodsPriceNumberTips": "新人价商品购买数量为1时,单价显示新人价,购买数量大于1时,单价显示原价或折扣价或会员价", |
|||
"orderMoney": "实付金额(元)", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"piece": "件", |
|||
"createTime": "创建时间", |
|||
"activeRefund": "主动退款", |
|||
"notes": "备注", |
|||
"offlinePayment": "线下支付", |
|||
"orderClose": "关闭订单", |
|||
"editPrice": "修改价格", |
|||
"editAddress": "修改地址", |
|||
"sendOutGoods": "发货", |
|||
"confirmTakeDelivery": "确认收货", |
|||
"all": "全部", |
|||
"toBeShipped": "待发货", |
|||
"shipped": "已发货", |
|||
"receivedGoods": "已收货", |
|||
"completed": "已完成", |
|||
"closed": "已关闭", |
|||
"refunding": "退款中", |
|||
"notesDetail": "备注信息", |
|||
|
|||
"exportOrderType": "导出订单类型", |
|||
"shopOrder": "订单数据表", |
|||
"shopOrderGoods": "订单商品表", |
|||
"point":"积分" |
|||
} |
|||
"delivery": "订单发货", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"goodsName": "商品名称", |
|||
"num": "商品数量", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"deliveryStatusName": "发货状态", |
|||
"fromType": "订单来源", |
|||
"payType": "支付类型", |
|||
"orderInfo": "订单信息", |
|||
"refundStatusName": "退款状态", |
|||
"outTradeNo": "交易流水号", |
|||
|
|||
"exportOrderType": "导出订单类型", |
|||
"shopOrder": "订单数据表", |
|||
"shopOrderGoods": "订单商品表", |
|||
"point": "积分" |
|||
} |
|||
|
|||
@ -1,25 +1,25 @@ |
|||
{ |
|||
"failuresNum":"发货失败单数", |
|||
"succeedNum":"发货成功单数", |
|||
"totalNum":"总发货单数", |
|||
"operationTime":"操作时间", |
|||
"operationType":"操作类型", |
|||
"state":"状态", |
|||
"operator":"操作人", |
|||
"importData":"批量发货", |
|||
"templateType":"模板类型", |
|||
"fullOrderDelivery":"整单发货模板", |
|||
"openOrderDelivery":"拆单发货模板", |
|||
"uploadFile":"上传文件", |
|||
"createTime":"时间", |
|||
"uploadFilePlaceholder":"请上传文件", |
|||
"operatorPlaceholder":"请选择操作人", |
|||
"causeFailure":"下载失败记录", |
|||
"downloadRecord":"下载记录", |
|||
"orderTemplate":"下载整单发货模板.xls", |
|||
"orderGoodsTemplate":"下载拆单发货模板.xls", |
|||
"checkCause": "查看失败原因", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"checkCause1": "失败原因" |
|||
} |
|||
"failuresNum": "发货失败单数", |
|||
"succeedNum": "发货成功单数", |
|||
"totalNum": "总发货单数", |
|||
"operationTime": "操作时间", |
|||
"operationType": "操作类型", |
|||
"state": "状态", |
|||
"operator": "操作人", |
|||
"importData": "批量发货", |
|||
"templateType": "模板类型", |
|||
"fullOrderDelivery": "整单发货模板", |
|||
"openOrderDelivery": "拆单发货模板", |
|||
"uploadFile": "上传文件", |
|||
"createTime": "时间", |
|||
"uploadFilePlaceholder": "请上传文件", |
|||
"operatorPlaceholder": "请选择操作人", |
|||
"causeFailure": "下载失败记录", |
|||
"downloadRecord": "下载记录", |
|||
"orderTemplate": "下载整单发货模板.xls", |
|||
"orderGoodsTemplate": "下载拆单发货模板.xls", |
|||
"checkCause": "查看失败原因", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"checkCause1": "失败原因" |
|||
} |
|||
|
|||
@ -1,41 +1,41 @@ |
|||
{ |
|||
"closeOrderInfo":"自动取消订单", |
|||
"closeOrderInfoLeft":"提交订单", |
|||
"closeOrderInfoRight":"分钟未付款,自动取消订单", |
|||
"closeOrderInfoBottom":"订单取消时间必须在10-1440分钟之间", |
|||
"CloseLengthPlaceholder":"请输入订单取消时间", |
|||
"isClose":"自动取消订单", |
|||
"confirm":"自动确认收货", |
|||
"confirmLeft":"发货后", |
|||
"confirmRight":"天,自动确认收货", |
|||
"confirmBottom":"自动确认收货时间必须在1-30天之间", |
|||
"finishLengthPlaceholder":"请输入自动确认收货时间", |
|||
"isFinish":"自动确认收货", |
|||
"refund":"确认收货后售后", |
|||
"refundLeft":"确认收货", |
|||
"refundRight":"天内,可申请售后", |
|||
"refundBottom":"确认收货后售后时间必须在1-30天之间", |
|||
"noAllowRefund":"确认收货后不支持售后", |
|||
"validRefundLengthPlaceholder":"请输入确认收货后售后时间", |
|||
"invoice":"发票设置", |
|||
"isInvoice":"发票开关", |
|||
"isInvoiceClose":"关闭", |
|||
"isInvoiceOpen":"开启", |
|||
"invoiceContent":"发票内容", |
|||
"insert":"添加", |
|||
"paperInvoice":"纸质发票", |
|||
"electronicInvoice":"电子发票", |
|||
"invoicePlaceholder":"所有发票内容不能为空", |
|||
"invoiceType":"发票类型", |
|||
"invoiceTypePlaceholder":"请至少选择一个发票类型", |
|||
"evaluate": "评价设置", |
|||
"isEvaluate": "评价开关", |
|||
"evaluateIsToExamine": "评价审核", |
|||
"evaluateIsShow": "评价显示", |
|||
"isEvaluateOpen": "开启", |
|||
"isEvaluateClose": "关闭", |
|||
"closeOrderInfo": "自动取消订单", |
|||
"closeOrderInfoLeft": "提交订单", |
|||
"closeOrderInfoRight": "分钟未付款,自动取消订单", |
|||
"closeOrderInfoBottom": "订单取消时间必须在10-1440分钟之间", |
|||
"CloseLengthPlaceholder": "请输入订单取消时间", |
|||
"isClose": "自动取消订单", |
|||
"confirm": "自动确认收货", |
|||
"confirmLeft": "发货后", |
|||
"confirmRight": "天,自动确认收货", |
|||
"confirmBottom": "自动确认收货时间必须在1-30天之间", |
|||
"finishLengthPlaceholder": "请输入自动确认收货时间", |
|||
"isFinish": "自动确认收货", |
|||
"refund": "确认收货后售后", |
|||
"refundLeft": "确认收货", |
|||
"refundRight": "天内,可申请售后", |
|||
"refundBottom": "确认收货后售后时间必须在1-30天之间", |
|||
"noAllowRefund": "确认收货后不支持售后", |
|||
"validRefundLengthPlaceholder": "请输入确认收货后售后时间", |
|||
"invoice": "发票设置", |
|||
"isInvoice": "发票开关", |
|||
"isInvoiceClose": "关闭", |
|||
"isInvoiceOpen": "开启", |
|||
"invoiceContent": "发票内容", |
|||
"insert": "添加", |
|||
"paperInvoice": "纸质发票", |
|||
"electronicInvoice": "电子发票", |
|||
"invoicePlaceholder": "所有发票内容不能为空", |
|||
"invoiceType": "发票类型", |
|||
"invoiceTypePlaceholder": "请至少选择一个发票类型", |
|||
"evaluate": "评价设置", |
|||
"isEvaluate": "评价开关", |
|||
"evaluateIsToExamine": "评价审核", |
|||
"evaluateIsShow": "评价显示", |
|||
"isEvaluateOpen": "开启", |
|||
"isEvaluateClose": "关闭", |
|||
|
|||
"diyForm": "万能表单", |
|||
"diyFormPlaceholder": "请选择万能表单", |
|||
"addDiyForm": "添加表单" |
|||
"diyForm": "万能表单", |
|||
"diyFormPlaceholder": "请选择万能表单", |
|||
"addDiyForm": "添加表单" |
|||
} |
|||
|
|||
@ -1,40 +1,40 @@ |
|||
{ |
|||
"isInvoice":"是否开票", |
|||
"isInvoicePlaceholder":"请输入开票类型", |
|||
"startDate":"开始时间", |
|||
"endDate":"结束时间", |
|||
"headType":"抬头类型", |
|||
"headerTypeName":"抬头类型", |
|||
"person":"个人", |
|||
"firm":"企业", |
|||
"headTypePlaceholder":"请输入抬头类型", |
|||
"headerName":"发票抬头", |
|||
"headerNamePlaceholder":"请输入发票抬头", |
|||
"name":"发票内容", |
|||
"tradeType":"发票类型", |
|||
"typeName":"发票名称", |
|||
"headTypeName":"抬头类型", |
|||
"taxNumber":"纳税人识别号", |
|||
"mobile":"手机号", |
|||
"email":"邮件", |
|||
"telephone":"电话号", |
|||
"address":"地址", |
|||
"bankTame":"开户银行", |
|||
"bankCardNumber":"开户行账号", |
|||
"money":"开票金额", |
|||
"invoiceNumber":"发票号码", |
|||
"invoiceVoucher":"发票凭证", |
|||
"remark":"备注", |
|||
"createTime":"创建时间", |
|||
"invoiceTime":"开票时间", |
|||
"status":"状态", |
|||
"operation":"操作", |
|||
"detail":"详情", |
|||
"hasInvoice":"已开票", |
|||
"noInvoice":"未开票", |
|||
"all":"全部", |
|||
"invoice":"开票", |
|||
"viewOrder":"查看订单", |
|||
"invoiceNumberPlaceholder":"请输入发票号码", |
|||
"invoiceVoucherPlaceholder":"请输入发票凭证" |
|||
} |
|||
"isInvoice": "是否开票", |
|||
"isInvoicePlaceholder": "请输入开票类型", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"headType": "抬头类型", |
|||
"headerTypeName": "抬头类型", |
|||
"person": "个人", |
|||
"firm": "企业", |
|||
"headTypePlaceholder": "请输入抬头类型", |
|||
"headerName": "发票抬头", |
|||
"headerNamePlaceholder": "请输入发票抬头", |
|||
"name": "发票内容", |
|||
"tradeType": "发票类型", |
|||
"typeName": "发票名称", |
|||
"headTypeName": "抬头类型", |
|||
"taxNumber": "纳税人识别号", |
|||
"mobile": "手机号", |
|||
"email": "邮件", |
|||
"telephone": "电话号", |
|||
"address": "地址", |
|||
"bankTame": "开户银行", |
|||
"bankCardNumber": "开户行账号", |
|||
"money": "开票金额", |
|||
"invoiceNumber": "发票号码", |
|||
"invoiceVoucher": "发票凭证", |
|||
"remark": "备注", |
|||
"createTime": "创建时间", |
|||
"invoiceTime": "开票时间", |
|||
"status": "状态", |
|||
"operation": "操作", |
|||
"detail": "详情", |
|||
"hasInvoice": "已开票", |
|||
"noInvoice": "未开票", |
|||
"all": "全部", |
|||
"invoice": "开票", |
|||
"viewOrder": "查看订单", |
|||
"invoiceNumberPlaceholder": "请输入发票号码", |
|||
"invoiceVoucherPlaceholder": "请输入发票凭证" |
|||
} |
|||
|
|||
@ -1,106 +1,106 @@ |
|||
{ |
|||
"goodsName": "商品名称", |
|||
"orderNo": "订单编号", |
|||
"orderRefundNo": "退款编号", |
|||
"refundTime": "退款时间", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderRefundNoPlaceholder": "请输入退款编号", |
|||
"goodsInfo": "商品信息", |
|||
"orderMoney": "订单金额", |
|||
"realityMoney":"实付金额", |
|||
"goodsMoney": "商品金额", |
|||
"buyMember": "买家", |
|||
"refundMoney": "退款金额", |
|||
"createTime": "申请时间", |
|||
"refundStatus": "退款状态", |
|||
"all": "全部", |
|||
"refundType": "退款方式", |
|||
"applyForRefund": "申请退款", |
|||
"refundEnd": "维权结束", |
|||
"toBeReturned": "买家待退货", |
|||
"receivedGoods": "卖家待收货", |
|||
"refundRefuse": "卖家拒绝", |
|||
"orderInfo": "订单信息", |
|||
"outTradeNo": "交易流水号", |
|||
"orderType": "订单类型", |
|||
"orderForm": "订单来源", |
|||
"takerName": "收货人", |
|||
"takerMobile": "收货人手机号", |
|||
"takerFullAddress": "收货地址", |
|||
"goodsDetail": "商品信息", |
|||
"price": "价格", |
|||
"num": "数量", |
|||
"preferentialMoney": "优惠金额", |
|||
"deliveryMoney": "配送金额", |
|||
"operateLog": "订单日志", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"detailOrderMoney": "实付金额(元)", |
|||
"buyInfo": "买家/收货人", |
|||
"deliveryType": "配送方式", |
|||
"piece": "件", |
|||
"payType": "支付方式", |
|||
"notes": "备注", |
|||
"editAddress": "修改地址", |
|||
"remind": "提醒", |
|||
"remindTips1": "如果未发货,请点击同意退款给买家。", |
|||
"remindTips2": "如果实际已发货,请主动与买家联系。", |
|||
"remindTips3": "如果订单整体退款后,优惠券和余额会退还给买家。", |
|||
"close": "关闭订单", |
|||
"finish": "确认收货", |
|||
"delivery": "订单发货", |
|||
"deliveryTypePlaceholder": "请选择配送方式", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"memberRemark": "买家留言", |
|||
"discountMoney": "订单详情", |
|||
"orderDelivery": "物流信息", |
|||
"devliveryTime": "发货时间", |
|||
"companyName": "物流公司", |
|||
"logisticNo": "物流单号", |
|||
"packageInfo": "物流包裹信息", |
|||
"deliveryInfo": "发货信息", |
|||
"logisticInfo": "物流信息", |
|||
"storeName": "自提点名称", |
|||
"storeAddress": "自提点地址", |
|||
"storeMobile": "自提点电话", |
|||
"tradeTime": "营业时间", |
|||
"deliveryStatusName": "发货状态", |
|||
"refundReason": "退款原因", |
|||
"afterSales": "售后信息", |
|||
"orderRefundRefuse": "退款拒绝", |
|||
"orderRefundAgree": "同意退款", |
|||
"agree": "同意", |
|||
"applyMoney": "申请金额", |
|||
"refuse": "拒绝", |
|||
"transferAccounts": "转账", |
|||
"refuseReason": "拒绝原因", |
|||
"shopReasonPlaceholder": "请输入拒绝原因", |
|||
"confirmDelivery": "确认收货", |
|||
"orderDeliveryTips": "确定商品收到了吗?", |
|||
"agreeRefundDelivery": "同意买家收货", |
|||
"refundDeliveryAddress": "退货地址", |
|||
"refundVoucher": "申请凭证", |
|||
"refundRemark": "退款描述", |
|||
"agreeMoney": "退款金额", |
|||
"moneyPlaceholder": "请输入退款金额", |
|||
"refundaddressPlaceholder": "请输入退货地址", |
|||
"expressCompany": "物流公司", |
|||
"expressRemark": "物流说明", |
|||
"orderInfoEmpty": "暂无数据" |
|||
} |
|||
"goodsName": "商品名称", |
|||
"orderNo": "订单编号", |
|||
"orderRefundNo": "退款编号", |
|||
"refundTime": "退款时间", |
|||
"startDate": "开始时间", |
|||
"endDate": "结束时间", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"orderNoPlaceholder": "请输入订单编号", |
|||
"orderRefundNoPlaceholder": "请输入退款编号", |
|||
"goodsInfo": "商品信息", |
|||
"orderMoney": "订单金额", |
|||
"realityMoney": "实付金额", |
|||
"goodsMoney": "商品金额", |
|||
"buyMember": "买家", |
|||
"refundMoney": "退款金额", |
|||
"createTime": "申请时间", |
|||
"refundStatus": "退款状态", |
|||
"all": "全部", |
|||
"refundType": "退款方式", |
|||
"applyForRefund": "申请退款", |
|||
"refundEnd": "维权结束", |
|||
"toBeReturned": "买家待退货", |
|||
"receivedGoods": "卖家待收货", |
|||
"refundRefuse": "卖家拒绝", |
|||
"orderInfo": "订单信息", |
|||
"outTradeNo": "交易流水号", |
|||
"orderType": "订单类型", |
|||
"orderForm": "订单来源", |
|||
"takerName": "收货人", |
|||
"takerMobile": "收货人手机号", |
|||
"takerFullAddress": "收货地址", |
|||
"goodsDetail": "商品信息", |
|||
"price": "价格", |
|||
"num": "数量", |
|||
"preferentialMoney": "优惠金额", |
|||
"deliveryMoney": "配送金额", |
|||
"operateLog": "订单日志", |
|||
"orderStatus": "订单状态", |
|||
"orderStatusPlaceholder": "请选择订单状态", |
|||
"orderFrom": "订单类型", |
|||
"orderFromPlaceholder": "请选择订单类型", |
|||
"payTime": "支付时间", |
|||
"orderGoods": "商品", |
|||
"goodsPriceNumber": "单价(元)/数量", |
|||
"detailOrderMoney": "实付金额(元)", |
|||
"buyInfo": "买家/收货人", |
|||
"deliveryType": "配送方式", |
|||
"piece": "件", |
|||
"payType": "支付方式", |
|||
"notes": "备注", |
|||
"editAddress": "修改地址", |
|||
"remind": "提醒", |
|||
"remindTips1": "如果未发货,请点击同意退款给买家。", |
|||
"remindTips2": "如果实际已发货,请主动与买家联系。", |
|||
"remindTips3": "如果订单整体退款后,优惠券和余额会退还给买家。", |
|||
"close": "关闭订单", |
|||
"finish": "确认收货", |
|||
"delivery": "订单发货", |
|||
"deliveryTypePlaceholder": "请选择配送方式", |
|||
"company": "物流公司", |
|||
"companyPlaceholder": "请选择物流公司", |
|||
"expressNumber": "物流单号", |
|||
"expressNumberPlaceholder": "请输入物流单号", |
|||
"orderGoodsIdsPlaceholder": "请选择订单项", |
|||
"virtualDelivery": "虚拟发货", |
|||
"orderCloseTips": "关闭订单后该订单将无法支付,是否确认关闭?", |
|||
"orderFinishTips": "是否确认用户已经收货?", |
|||
"orderGoodsPlaceholder": "请选择要发货的商品", |
|||
"memberRemark": "买家留言", |
|||
"discountMoney": "订单详情", |
|||
"orderDelivery": "物流信息", |
|||
"devliveryTime": "发货时间", |
|||
"companyName": "物流公司", |
|||
"logisticNo": "物流单号", |
|||
"packageInfo": "物流包裹信息", |
|||
"deliveryInfo": "发货信息", |
|||
"logisticInfo": "物流信息", |
|||
"storeName": "自提点名称", |
|||
"storeAddress": "自提点地址", |
|||
"storeMobile": "自提点电话", |
|||
"tradeTime": "营业时间", |
|||
"deliveryStatusName": "发货状态", |
|||
"refundReason": "退款原因", |
|||
"afterSales": "售后信息", |
|||
"orderRefundRefuse": "退款拒绝", |
|||
"orderRefundAgree": "同意退款", |
|||
"agree": "同意", |
|||
"applyMoney": "申请金额", |
|||
"refuse": "拒绝", |
|||
"transferAccounts": "转账", |
|||
"refuseReason": "拒绝原因", |
|||
"shopReasonPlaceholder": "请输入拒绝原因", |
|||
"confirmDelivery": "确认收货", |
|||
"orderDeliveryTips": "确定商品收到了吗?", |
|||
"agreeRefundDelivery": "同意买家收货", |
|||
"refundDeliveryAddress": "退货地址", |
|||
"refundVoucher": "申请凭证", |
|||
"refundRemark": "退款描述", |
|||
"agreeMoney": "退款金额", |
|||
"moneyPlaceholder": "请输入退款金额", |
|||
"refundaddressPlaceholder": "请输入退货地址", |
|||
"expressCompany": "物流公司", |
|||
"expressRemark": "物流说明", |
|||
"orderInfoEmpty": "暂无数据" |
|||
} |
|||
|
|||
@ -1,37 +1,37 @@ |
|||
{ |
|||
"goodsOverview": "商品概况", |
|||
"timeFilter": "时间筛选", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"search": "搜索", |
|||
"goodsAccessNum": "商品浏览量", |
|||
"goodsAccessNumTip": "统计时间内,所有商品详情页被访问的次数,一个人在统计时间内访问多次记为多次", |
|||
"goodsVisitCount": "商品访客数", |
|||
"goodsVisitCountTips":"统计时间内,访问任何商品详情页的人数,一个人在统计时间范围内访问多次只记为一个", |
|||
"cartNum":"加购件数", |
|||
"cartNumTips":"统计时间内,添加商品进入购物车的商品件数", |
|||
"saleNum": "下单件数", |
|||
"saleNumTips": "统计时间内,成功下单的商品件数之和(不剔除退款订单)", |
|||
"payNum": "支付件数", |
|||
"payNumTips": "统计时间内, 成功付款订单的商品件数之和(不剔除退款订单)", |
|||
"payMoney":"支付金额", |
|||
"payMoneyTips":"统计时间内,成功付款订单的商品金额之和(不剔除退款订单)", |
|||
"refundMoney":"退款金额", |
|||
"refundMoneyTips":"统计时间内,成功退款的商品金额之和", |
|||
"refundNum":"退款件数", |
|||
"refundNumTips":"统计时间内,成功退款的商品件数之和", |
|||
"goodsRank": "商品排行", |
|||
"goodsName":"商品名称", |
|||
"goodsNamePlaceholder":"请输入商品名称", |
|||
"goodsCategory": "商品分类", |
|||
"all":"全部", |
|||
"totalType":"统计类型", |
|||
"totalTypePlaceholder":"请选择统计类型", |
|||
"goodsInfo":"商品信息", |
|||
"accessNum":"访问次数", |
|||
"visitCount":"访客数", |
|||
"cartNumber":"加入购物车数量", |
|||
"saleNumber":"商品销量", |
|||
"payTotal":"支付总金额", |
|||
"collectNum":"收藏数量" |
|||
} |
|||
"goodsOverview": "商品概况", |
|||
"timeFilter": "时间筛选", |
|||
"startTime": "开始时间", |
|||
"endTime": "结束时间", |
|||
"search": "搜索", |
|||
"goodsAccessNum": "商品浏览量", |
|||
"goodsAccessNumTip": "统计时间内,所有商品详情页被访问的次数,一个人在统计时间内访问多次记为多次", |
|||
"goodsVisitCount": "商品访客数", |
|||
"goodsVisitCountTips": "统计时间内,访问任何商品详情页的人数,一个人在统计时间范围内访问多次只记为一个", |
|||
"cartNum": "加购件数", |
|||
"cartNumTips": "统计时间内,添加商品进入购物车的商品件数", |
|||
"saleNum": "下单件数", |
|||
"saleNumTips": "统计时间内,成功下单的商品件数之和(不剔除退款订单)", |
|||
"payNum": "支付件数", |
|||
"payNumTips": "统计时间内, 成功付款订单的商品件数之和(不剔除退款订单)", |
|||
"payMoney": "支付金额", |
|||
"payMoneyTips": "统计时间内,成功付款订单的商品金额之和(不剔除退款订单)", |
|||
"refundMoney": "退款金额", |
|||
"refundMoneyTips": "统计时间内,成功退款的商品金额之和", |
|||
"refundNum": "退款件数", |
|||
"refundNumTips": "统计时间内,成功退款的商品件数之和", |
|||
"goodsRank": "商品排行", |
|||
"goodsName": "商品名称", |
|||
"goodsNamePlaceholder": "请输入商品名称", |
|||
"goodsCategory": "商品分类", |
|||
"all": "全部", |
|||
"totalType": "统计类型", |
|||
"totalTypePlaceholder": "请选择统计类型", |
|||
"goodsInfo": "商品信息", |
|||
"accessNum": "访问次数", |
|||
"visitCount": "访客数", |
|||
"cartNumber": "加入购物车数量", |
|||
"saleNumber": "商品销量", |
|||
"payTotal": "支付总金额", |
|||
"collectNum": "收藏数量" |
|||
} |
|||
|
|||
@ -1,184 +1,257 @@ |
|||
<template> |
|||
<div class="main-container"> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
|
|||
<div class="flex justify-between items-center mb-[5px] h-[32px]"> |
|||
<span class="text-lg">{{pageName}}</span> |
|||
</div> |
|||
|
|||
<el-tabs model-value="/shop/delivery/electronic_sheet/config" @tab-change="handleClick"> |
|||
<el-tab-pane :label="t('tabESTemplate')" name="/shop/delivery/electronic_sheet" /> |
|||
<el-tab-pane :label="t('tabESConfig')" name="/shop/delivery/electronic_sheet/config" /> |
|||
</el-tabs> |
|||
|
|||
<el-form class="page-form" :model="formData" :rules="formRules" label-width="150px" ref="formRef" v-loading="loading"> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('apiSet') }}</h3> |
|||
|
|||
<el-form-item :label="t('interfaceType')" prop="interface_type"> |
|||
<div> |
|||
<el-radio-group v-model="formData.interface_type"> |
|||
<el-radio label="kdbird" size="large">{{ t('kdn') }}</el-radio> |
|||
</el-radio-group> |
|||
<template v-if="formData.interface_type == 'kdbird'"> |
|||
<p class="text-[12px] text-[#b2b2b2]"> |
|||
{{ t('promptTips1-1') }}<el-button class="button-size" type="primary" link @click="kdnEvent('https://www.kdniao.com')">https://www.kdniao.com</el-button> |
|||
</p> |
|||
</template> |
|||
</div> |
|||
</el-form-item> |
|||
<div v-if="formData.interface_type == 'kdbird'"> |
|||
|
|||
<el-form-item :label="t('kdnEBusinessIDLabel')" class="input-item"> |
|||
<div> |
|||
<el-input v-model.trim="formData.kdniao_id" :placeholder="t('kdnEBusinessIDPlaceholder')" class="input-width" clearable /> |
|||
<p class="text-[12px] text-[#b2b2b2]">{{ t('kdnEBusinessIDTips') }}</p> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item label="API key" class="input-item"> |
|||
<div> |
|||
<el-input v-model.trim="formData.kdniao_api_key" clearable :placeholder="t('kdnAppKeyPlaceholder')" class="input-width" /> |
|||
<p class="text-[12px] text-[#b2b2b2]">{{ t('kdnAppKeyTips') }}</p> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
</div> |
|||
|
|||
</el-card> |
|||
|
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('printerSet') }}</h3> |
|||
|
|||
<el-alert type="warning" :closable="false" class="!mb-[10px]"> |
|||
<template #default> |
|||
<p>用双端口加载主JS文件Lodop.js(或CLodopfuncs.js兼容老版本)以防其中某端口被占</p> |
|||
<p>HTTP推荐端口:8000/18000,HTTPS推荐端口:8443</p> |
|||
<p>1. 请将打印机连接至本机。 </p> |
|||
<p>2. 在本机上安装打印控件。下载链接:<a href="http://www.lodop.net/download.html" target="_blank" class="text-primary">http://www.lodop.net/download.html</a></p> |
|||
<p>3. 将打印控件中的打印端口下面的打印端口设为相同。</p> |
|||
</template> |
|||
</el-alert> |
|||
|
|||
<el-form-item :label="t('serverPort1')" class="input-item-required" prop="server_port1"> |
|||
<div> |
|||
<el-input v-model.trim="formData.server_port1" :placeholder="t('serverPort1Placeholder')" class="input-width" clearable /> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('serverPort2')" class="input-item-required" prop="server_port2"> |
|||
<div> |
|||
<el-input v-model.trim="formData.server_port2" :placeholder="t('serverPort2Placeholder')" class="input-width" clearable /> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('httpsPort')" class="input-item-required" prop="https_port"> |
|||
<div> |
|||
<el-input v-model.trim="formData.https_port" :placeholder="t('httpsPortPlaceholder')" class="input-width" clearable /> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
</el-card> |
|||
</el-form> |
|||
|
|||
<div class="fixed-footer-wrap"> |
|||
<div class="fixed-footer"> |
|||
<el-button type="primary" :loading="loading" @click="save(formRef)">{{ t('save') }}</el-button> |
|||
</div> |
|||
</div> |
|||
</el-card> |
|||
|
|||
</div> |
|||
<div class="main-container"> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<div class="flex justify-between items-center mb-[5px] h-[32px]"> |
|||
<span class="text-lg">{{ pageName }}</span> |
|||
</div> |
|||
|
|||
<el-tabs |
|||
model-value="/shop/delivery/electronic_sheet/config" |
|||
@tab-change="handleClick" |
|||
> |
|||
<el-tab-pane |
|||
:label="t('tabESTemplate')" |
|||
name="/shop/delivery/electronic_sheet" |
|||
/> |
|||
<el-tab-pane |
|||
:label="t('tabESConfig')" |
|||
name="/shop/delivery/electronic_sheet/config" |
|||
/> |
|||
</el-tabs> |
|||
|
|||
<el-form |
|||
class="page-form" |
|||
:model="formData" |
|||
:rules="formRules" |
|||
label-width="150px" |
|||
ref="formRef" |
|||
v-loading="loading" |
|||
> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('apiSet') }}</h3> |
|||
|
|||
<el-form-item :label="t('interfaceType')" prop="interface_type"> |
|||
<div> |
|||
<el-radio-group v-model="formData.interface_type"> |
|||
<el-radio label="kdbird" size="large">{{ t('kdn') }}</el-radio> |
|||
</el-radio-group> |
|||
<template v-if="formData.interface_type == 'kdbird'"> |
|||
<p class="text-[12px] text-[#b2b2b2]"> |
|||
{{ t('promptTips1-1') |
|||
}}<el-button |
|||
class="button-size" |
|||
type="primary" |
|||
link |
|||
@click="kdnEvent('https://www.kdniao.com')" |
|||
>https://www.kdniao.com</el-button |
|||
> |
|||
</p> |
|||
</template> |
|||
</div> |
|||
</el-form-item> |
|||
<div v-if="formData.interface_type == 'kdbird'"> |
|||
<el-form-item :label="t('kdnEBusinessIDLabel')" class="input-item"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.kdniao_id" |
|||
:placeholder="t('kdnEBusinessIDPlaceholder')" |
|||
class="input-width" |
|||
clearable |
|||
/> |
|||
<p class="text-[12px] text-[#b2b2b2]"> |
|||
{{ t('kdnEBusinessIDTips') }} |
|||
</p> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item label="API key" class="input-item"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.kdniao_api_key" |
|||
clearable |
|||
:placeholder="t('kdnAppKeyPlaceholder')" |
|||
class="input-width" |
|||
/> |
|||
<p class="text-[12px] text-[#b2b2b2]"> |
|||
{{ t('kdnAppKeyTips') }} |
|||
</p> |
|||
</div> |
|||
</el-form-item> |
|||
</div> |
|||
</el-card> |
|||
|
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('printerSet') }}</h3> |
|||
|
|||
<el-alert type="warning" :closable="false" class="!mb-[10px]"> |
|||
<template #default> |
|||
<p> |
|||
用双端口加载主JS文件Lodop.js(或CLodopfuncs.js兼容老版本)以防其中某端口被占 |
|||
</p> |
|||
<p>HTTP推荐端口:8000/18000,HTTPS推荐端口:8443</p> |
|||
<p>1. 请将打印机连接至本机。</p> |
|||
<p> |
|||
2. 在本机上安装打印控件。下载链接:<a |
|||
href="http://www.lodop.net/download.html" |
|||
target="_blank" |
|||
class="text-primary" |
|||
>http://www.lodop.net/download.html</a |
|||
> |
|||
</p> |
|||
<p>3. 将打印控件中的打印端口下面的打印端口设为相同。</p> |
|||
</template> |
|||
</el-alert> |
|||
|
|||
<el-form-item |
|||
:label="t('serverPort1')" |
|||
class="input-item-required" |
|||
prop="server_port1" |
|||
> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.server_port1" |
|||
:placeholder="t('serverPort1Placeholder')" |
|||
class="input-width" |
|||
clearable |
|||
/> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item |
|||
:label="t('serverPort2')" |
|||
class="input-item-required" |
|||
prop="server_port2" |
|||
> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.server_port2" |
|||
:placeholder="t('serverPort2Placeholder')" |
|||
class="input-width" |
|||
clearable |
|||
/> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item |
|||
:label="t('httpsPort')" |
|||
class="input-item-required" |
|||
prop="https_port" |
|||
> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.https_port" |
|||
:placeholder="t('httpsPortPlaceholder')" |
|||
class="input-width" |
|||
clearable |
|||
/> |
|||
</div> |
|||
</el-form-item> |
|||
</el-card> |
|||
</el-form> |
|||
|
|||
<div class="fixed-footer-wrap"> |
|||
<div class="fixed-footer"> |
|||
<el-button type="primary" :loading="loading" @click="save(formRef)">{{ |
|||
t('save') |
|||
}}</el-button> |
|||
</div> |
|||
</div> |
|||
</el-card> |
|||
</div> |
|||
</template> |
|||
|
|||
<script lang="ts" setup> |
|||
import { reactive, ref } from 'vue' |
|||
import { t } from '@/lang' |
|||
import { FormInstance, FormRules } from 'element-plus' |
|||
import { useRoute,useRouter } from 'vue-router' |
|||
import { setElectronicSheetConfig, getElectronicSheetConfig } from '@/addon/shop/api/electronic_sheet' |
|||
import { useRoute, useRouter } from 'vue-router' |
|||
import { |
|||
setElectronicSheetConfig, |
|||
getElectronicSheetConfig, |
|||
} from '@/addon/shop/api/electronic_sheet' |
|||
|
|||
const route = useRoute() |
|||
const router = useRouter() |
|||
const pageName = route.meta.title; |
|||
const pageName = route.meta.title |
|||
const loading = ref(true) |
|||
|
|||
const handleClick = (path: string) => { |
|||
router.push({ path }) |
|||
router.push({ path }) |
|||
} |
|||
|
|||
const formData:any = reactive({ |
|||
interface_type: 'kdbird', |
|||
kdniao_id: '', |
|||
kdniao_api_key: '', |
|||
server_port1: '8000', |
|||
server_port2: '18000', |
|||
https_port: '8443' |
|||
const formData: any = reactive({ |
|||
interface_type: 'kdbird', |
|||
kdniao_id: '', |
|||
kdniao_api_key: '', |
|||
server_port1: '8000', |
|||
server_port2: '18000', |
|||
https_port: '8443', |
|||
}) |
|||
|
|||
const setFormData = async () => { |
|||
const data = await (await getElectronicSheetConfig()).data |
|||
Object.keys(formData).forEach((key: string) => { |
|||
if (data[key] != undefined) formData[key] = data[key] |
|||
}) |
|||
const data = await (await getElectronicSheetConfig()).data |
|||
Object.keys(formData).forEach((key: string) => { |
|||
if (data[key] != undefined) formData[key] = data[key] |
|||
}) |
|||
|
|||
loading.value = false |
|||
loading.value = false |
|||
} |
|||
setFormData() |
|||
|
|||
const kdnEvent = (url:any) => { |
|||
window.open(url, '_blank') |
|||
const kdnEvent = (url: any) => { |
|||
window.open(url, '_blank') |
|||
} |
|||
|
|||
const formRef = ref<FormInstance>() |
|||
|
|||
// 表单验证规则 |
|||
const formRules = reactive<FormRules>({ |
|||
server_port1: [ |
|||
{ required: true, message: t('serverPort1Placeholder'), trigger: 'blur' }, |
|||
], |
|||
server_port2: [ |
|||
{ required: true, message: t('serverPort2Placeholder'), trigger: 'blur' }, |
|||
], |
|||
https_port: [ |
|||
{ required: true, message: t('httpsPortPlaceholder'), trigger: 'blur' }, |
|||
], |
|||
server_port1: [ |
|||
{ required: true, message: t('serverPort1Placeholder'), trigger: 'blur' }, |
|||
], |
|||
server_port2: [ |
|||
{ required: true, message: t('serverPort2Placeholder'), trigger: 'blur' }, |
|||
], |
|||
https_port: [ |
|||
{ required: true, message: t('httpsPortPlaceholder'), trigger: 'blur' }, |
|||
], |
|||
}) |
|||
|
|||
/** |
|||
* 保存 |
|||
*/ |
|||
const save = async (formEl: FormInstance | undefined) => { |
|||
if (loading.value || !formEl) return |
|||
|
|||
await formEl.validate(async (valid) => { |
|||
if (valid) { |
|||
loading.value = true |
|||
setElectronicSheetConfig(formData).then(() => { |
|||
loading.value = false |
|||
}).catch(() => { |
|||
loading.value = false |
|||
}) |
|||
} |
|||
}) |
|||
if (loading.value || !formEl) return |
|||
|
|||
await formEl.validate(async (valid) => { |
|||
if (valid) { |
|||
loading.value = true |
|||
setElectronicSheetConfig(formData) |
|||
.then(() => { |
|||
loading.value = false |
|||
}) |
|||
.catch(() => { |
|||
loading.value = false |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
|
|||
</script> |
|||
|
|||
<style lang="scss" scoped> |
|||
.input-item { |
|||
margin-bottom: 10px !important |
|||
margin-bottom: 10px !important; |
|||
} |
|||
|
|||
.input-item-required { |
|||
margin-bottom: 20px !important |
|||
margin-bottom: 20px !important; |
|||
} |
|||
|
|||
.button-size { |
|||
font-size: 12px !important; |
|||
font-size: 12px !important; |
|||
} |
|||
|
|||
.el-radio.el-radio--large { |
|||
height: auto !important |
|||
height: auto !important; |
|||
} |
|||
</style> |
|||
|
|||
@ -1,270 +1,384 @@ |
|||
<template> |
|||
<div class="main-container"> |
|||
<el-card class="card !border-none mb-[15px]" shadow="never"> |
|||
<el-page-header :content="pageName" :icon="ArrowLeft" @back="back" /> |
|||
</el-card> |
|||
|
|||
<el-form class="page-form" :model="formData" :rules="formRules" label-width="150px" ref="formRef" v-loading="loading"> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
|
|||
<h3 class="panel-title !text-sm">{{ t('basicSettings') }}</h3> |
|||
<el-form-item :label="t('templateName')" prop="template_name"> |
|||
<el-input v-model.trim="formData.template_name" clearable :placeholder="t('templateNamePlaceholder')" class="input-width" maxlength="30" /> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('expressCompany')" prop="express_company_id"> |
|||
<el-select v-model="formData.express_company_id" :placeholder="t('expressCompanyPlaceholder')" clearable @change="handleSelectCompanyChange"> |
|||
<el-option v-for="item in companyList" :key="item.company_id" :label="item.company_name" :value="item.company_id" /> |
|||
</el-select> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('expType')" prop="exp_type" v-show="expTypeList.length"> |
|||
<el-radio-group v-model="formData.exp_type"> |
|||
<el-radio v-for="(item,index) in expTypeList" :key="index" :value="item.value">{{ item.text }}</el-radio> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('printStyle')" v-show="printStyleList.length"> |
|||
<div> |
|||
<el-select v-model="formData.print_style" :placeholder="t('printStylePlaceholder')" clearable> |
|||
<el-option v-for="(item,index) in printStyleList" :key="index" :label="item.template_name" :value="item.template_size" /> |
|||
</el-select> |
|||
<div class="text-[12px] text-[#999] mt-[3px] leading-[20px]">{{ t('printStyleTips1') }}</div> |
|||
<div class="text-[12px] text-[#999] mt-[3px] leading-[20px]">{{ t('printStyleTips2') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
</el-card> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('otherSettings') }}</h3> |
|||
|
|||
<el-form-item :label="t('customerName')"> |
|||
<div> |
|||
<el-input v-model.trim="formData.customer_name" clearable class="input-width" maxlength="20" /> |
|||
<div class="flex items-center mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
<span>{{ t('customerNameTips') }}</span> |
|||
<a class="ml-[3px] text-[var(--el-color-primary)]" target="_blank" href="https://www.yuque.com/kdnjishuzhichi/rg4owd">{{t('examine')}}</a> |
|||
</div> |
|||
<div class="flex items-center mt-[3px] text-[12px] text-[#999] leading-[20px]"> |
|||
<span>{{ t('customerNameTips1') }}</span> |
|||
<a class="ml-[3px] text-[var(--el-color-primary)]" target="_blank" href="https://www.yuque.com/kdnjishuzhichi/dfcrg1/hrfw43">{{t('examine')}}</a> |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('customerPwd')"> |
|||
<div> |
|||
<el-input v-model.trim="formData.customer_pwd" clearable class="input-width" maxlength="20" /> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]">{{ t('customerPwdTips') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('sendSite')"> |
|||
<div> |
|||
<el-input v-model.trim="formData.send_site" clearable class="input-width" maxlength="20" /> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]">{{ t('sendSiteTips') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('sendStaff')"> |
|||
<div> |
|||
<el-input v-model.trim="formData.send_staff" clearable class="input-width" maxlength="20" /> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]">{{ t('sendStaffTips') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('monthCode')"> |
|||
<div> |
|||
<el-input v-model.trim="formData.month_code" clearable class="input-width" maxlength="20" /> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]">{{ t('monthCodeTips') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('payType')"> |
|||
<el-radio-group v-model="formData.pay_type"> |
|||
<el-radio v-for="(item,index) in payType" :value="parseInt(index)">{{ item }}</el-radio> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('isNotice')"> |
|||
<div> |
|||
<el-radio-group v-model="formData.is_notice"> |
|||
<el-radio :value="1">{{ t('yes') }}</el-radio> |
|||
<el-radio :value="0">{{ t('no') }}</el-radio> |
|||
</el-radio-group> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]">{{ t('isNoticeTips') }}</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('status')"> |
|||
<el-switch v-model="formData.status" :active-value="1" :inactive-value="0" /> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('isDefault')"> |
|||
<el-switch v-model="formData.is_default" :active-value="1" :inactive-value="0" /> |
|||
</el-form-item> |
|||
|
|||
</el-card> |
|||
</el-form> |
|||
|
|||
<div class="fixed-footer-wrap"> |
|||
<div class="fixed-footer"> |
|||
<el-button type="primary" :loading="repeat" @click="confirm(formRef)">{{ t('save') }}</el-button> |
|||
<el-button @click="back()">{{ t('cancel') }}</el-button> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="main-container"> |
|||
<el-card class="card !border-none mb-[15px]" shadow="never"> |
|||
<el-page-header :content="pageName" :icon="ArrowLeft" @back="back" /> |
|||
</el-card> |
|||
|
|||
<el-form |
|||
class="page-form" |
|||
:model="formData" |
|||
:rules="formRules" |
|||
label-width="150px" |
|||
ref="formRef" |
|||
v-loading="loading" |
|||
> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('basicSettings') }}</h3> |
|||
<el-form-item :label="t('templateName')" prop="template_name"> |
|||
<el-input |
|||
v-model.trim="formData.template_name" |
|||
clearable |
|||
:placeholder="t('templateNamePlaceholder')" |
|||
class="input-width" |
|||
maxlength="30" |
|||
/> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('expressCompany')" prop="express_company_id"> |
|||
<el-select |
|||
v-model="formData.express_company_id" |
|||
:placeholder="t('expressCompanyPlaceholder')" |
|||
clearable |
|||
@change="handleSelectCompanyChange" |
|||
> |
|||
<el-option |
|||
v-for="item in companyList" |
|||
:key="item.company_id" |
|||
:label="item.company_name" |
|||
:value="item.company_id" |
|||
/> |
|||
</el-select> |
|||
</el-form-item> |
|||
|
|||
<el-form-item |
|||
:label="t('expType')" |
|||
prop="exp_type" |
|||
v-show="expTypeList.length" |
|||
> |
|||
<el-radio-group v-model="formData.exp_type"> |
|||
<el-radio |
|||
v-for="(item, index) in expTypeList" |
|||
:key="index" |
|||
:value="item.value" |
|||
>{{ item.text }}</el-radio |
|||
> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('printStyle')" v-show="printStyleList.length"> |
|||
<div> |
|||
<el-select |
|||
v-model="formData.print_style" |
|||
:placeholder="t('printStylePlaceholder')" |
|||
clearable |
|||
> |
|||
<el-option |
|||
v-for="(item, index) in printStyleList" |
|||
:key="index" |
|||
:label="item.template_name" |
|||
:value="item.template_size" |
|||
/> |
|||
</el-select> |
|||
<div class="text-[12px] text-[#999] mt-[3px] leading-[20px]"> |
|||
{{ t('printStyleTips1') }} |
|||
</div> |
|||
<div class="text-[12px] text-[#999] mt-[3px] leading-[20px]"> |
|||
{{ t('printStyleTips2') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
</el-card> |
|||
<el-card class="box-card !border-none" shadow="never"> |
|||
<h3 class="panel-title !text-sm">{{ t('otherSettings') }}</h3> |
|||
|
|||
<el-form-item :label="t('customerName')"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.customer_name" |
|||
clearable |
|||
class="input-width" |
|||
maxlength="20" |
|||
/> |
|||
<div |
|||
class="flex items-center mt-[5px] text-[12px] text-[#999] leading-[20px]" |
|||
> |
|||
<span>{{ t('customerNameTips') }}</span> |
|||
<a |
|||
class="ml-[3px] text-[var(--el-color-primary)]" |
|||
target="_blank" |
|||
href="https://www.yuque.com/kdnjishuzhichi/rg4owd" |
|||
>{{ t('examine') }}</a |
|||
> |
|||
</div> |
|||
<div |
|||
class="flex items-center mt-[3px] text-[12px] text-[#999] leading-[20px]" |
|||
> |
|||
<span>{{ t('customerNameTips1') }}</span> |
|||
<a |
|||
class="ml-[3px] text-[var(--el-color-primary)]" |
|||
target="_blank" |
|||
href="https://www.yuque.com/kdnjishuzhichi/dfcrg1/hrfw43" |
|||
>{{ t('examine') }}</a |
|||
> |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('customerPwd')"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.customer_pwd" |
|||
clearable |
|||
class="input-width" |
|||
maxlength="20" |
|||
/> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
{{ t('customerPwdTips') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('sendSite')"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.send_site" |
|||
clearable |
|||
class="input-width" |
|||
maxlength="20" |
|||
/> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
{{ t('sendSiteTips') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('sendStaff')"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.send_staff" |
|||
clearable |
|||
class="input-width" |
|||
maxlength="20" |
|||
/> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
{{ t('sendStaffTips') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('monthCode')"> |
|||
<div> |
|||
<el-input |
|||
v-model.trim="formData.month_code" |
|||
clearable |
|||
class="input-width" |
|||
maxlength="20" |
|||
/> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
{{ t('monthCodeTips') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('payType')"> |
|||
<el-radio-group v-model="formData.pay_type"> |
|||
<el-radio |
|||
v-for="(item, index) in payType" |
|||
:value="parseInt(index)" |
|||
>{{ item }}</el-radio |
|||
> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('isNotice')"> |
|||
<div> |
|||
<el-radio-group v-model="formData.is_notice"> |
|||
<el-radio :value="1">{{ t('yes') }}</el-radio> |
|||
<el-radio :value="0">{{ t('no') }}</el-radio> |
|||
</el-radio-group> |
|||
<div class="mt-[5px] text-[12px] text-[#999] leading-[20px]"> |
|||
{{ t('isNoticeTips') }} |
|||
</div> |
|||
</div> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('status')"> |
|||
<el-switch |
|||
v-model="formData.status" |
|||
:active-value="1" |
|||
:inactive-value="0" |
|||
/> |
|||
</el-form-item> |
|||
|
|||
<el-form-item :label="t('isDefault')"> |
|||
<el-switch |
|||
v-model="formData.is_default" |
|||
:active-value="1" |
|||
:inactive-value="0" |
|||
/> |
|||
</el-form-item> |
|||
</el-card> |
|||
</el-form> |
|||
|
|||
<div class="fixed-footer-wrap"> |
|||
<div class="fixed-footer"> |
|||
<el-button type="primary" :loading="repeat" @click="confirm(formRef)">{{ |
|||
t('save') |
|||
}}</el-button> |
|||
<el-button @click="back()">{{ t('cancel') }}</el-button> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</template> |
|||
|
|||
<script lang="ts" setup> |
|||
import { ref, reactive, computed } from 'vue' |
|||
import { t } from '@/lang' |
|||
import type { FormInstance } from 'element-plus' |
|||
import { useRoute, useRouter } from 'vue-router' |
|||
import { |
|||
addElectronicSheet, |
|||
editElectronicSheet, |
|||
getElectronicSheetInfo, |
|||
getElectronicSheetPayType |
|||
} from '@/addon/shop/api/electronic_sheet' |
|||
import { getCompanyList } from '@/addon/shop/api/delivery' |
|||
|
|||
const loading = ref(false) |
|||
const route = useRoute() |
|||
const router = useRouter() |
|||
const repeat = ref(false) |
|||
|
|||
const pageName = route.meta.title |
|||
|
|||
/** |
|||
* 表单数据 |
|||
*/ |
|||
const initialFormData:any = { |
|||
id: route.query.id || 0, |
|||
template_name: '', |
|||
express_company_id: '', |
|||
customer_name: '', |
|||
customer_pwd: '', |
|||
send_site: '', |
|||
send_staff: '', |
|||
month_code: '', |
|||
pay_type: 1, |
|||
is_notice: 0, |
|||
status: 1, |
|||
exp_type: 1, |
|||
print_style: '', |
|||
is_default: '', |
|||
} |
|||
|
|||
const formData: Record<string, any> = reactive({ ...initialFormData }) |
|||
|
|||
const formRef = ref<FormInstance>() |
|||
|
|||
// 表单验证规则 |
|||
const formRules = computed(() => { |
|||
return { |
|||
template_name: [ |
|||
{ required: true, message: t('templateNamePlaceholder'), trigger: 'blur' }, |
|||
], |
|||
express_company_id: [ |
|||
{ required: true, message: t('expressCompanyPlaceholder'), trigger: 'blur' }, |
|||
] |
|||
} |
|||
import { ref, reactive, computed } from 'vue' |
|||
import { t } from '@/lang' |
|||
import type { FormInstance } from 'element-plus' |
|||
import { useRoute, useRouter } from 'vue-router' |
|||
import { |
|||
addElectronicSheet, |
|||
editElectronicSheet, |
|||
getElectronicSheetInfo, |
|||
getElectronicSheetPayType, |
|||
} from '@/addon/shop/api/electronic_sheet' |
|||
import { getCompanyList } from '@/addon/shop/api/delivery' |
|||
|
|||
const loading = ref(false) |
|||
const route = useRoute() |
|||
const router = useRouter() |
|||
const repeat = ref(false) |
|||
|
|||
const pageName = route.meta.title |
|||
|
|||
/** |
|||
* 表单数据 |
|||
*/ |
|||
const initialFormData: any = { |
|||
id: route.query.id || 0, |
|||
template_name: '', |
|||
express_company_id: '', |
|||
customer_name: '', |
|||
customer_pwd: '', |
|||
send_site: '', |
|||
send_staff: '', |
|||
month_code: '', |
|||
pay_type: 1, |
|||
is_notice: 0, |
|||
status: 1, |
|||
exp_type: 1, |
|||
print_style: '', |
|||
is_default: '', |
|||
} |
|||
|
|||
const formData: Record<string, any> = reactive({ ...initialFormData }) |
|||
|
|||
const formRef = ref<FormInstance>() |
|||
|
|||
// 表单验证规则 |
|||
const formRules = computed(() => { |
|||
return { |
|||
template_name: [ |
|||
{ |
|||
required: true, |
|||
message: t('templateNamePlaceholder'), |
|||
trigger: 'blur', |
|||
}, |
|||
], |
|||
express_company_id: [ |
|||
{ |
|||
required: true, |
|||
message: t('expressCompanyPlaceholder'), |
|||
trigger: 'blur', |
|||
}, |
|||
], |
|||
} |
|||
}) |
|||
|
|||
const companyList: any = ref([]) // 物流公司列表 |
|||
const expTypeList: any = ref([]) // 业务类型 |
|||
const printStyleList: any = ref([]) // 模版样式 |
|||
const payType = ref([]) |
|||
|
|||
const init = async () => { |
|||
getElectronicSheetPayType().then((res: any) => { |
|||
payType.value = res.data |
|||
}) |
|||
|
|||
await getCompanyList({ electronic_sheet_switch: 1 }).then((res: any) => { |
|||
companyList.value = res.data |
|||
}) |
|||
|
|||
if (formData.id) { |
|||
loading.value = true |
|||
getElectronicSheetInfo(formData.id).then((res: any) => { |
|||
let data = res.data |
|||
if (data) |
|||
Object.keys(formData).forEach((key: string) => { |
|||
if (data[key] != undefined) formData[key] = data[key] |
|||
}) |
|||
loading.value = false |
|||
handleSelectCompanyChange(formData.express_company_id, true) |
|||
}) |
|||
|
|||
const companyList: any = ref([]) // 物流公司列表 |
|||
const expTypeList: any = ref([]) // 业务类型 |
|||
const printStyleList: any = ref([]) // 模版样式 |
|||
const payType = ref([]) |
|||
|
|||
const init = async ()=> { |
|||
getElectronicSheetPayType().then((res: any) => { |
|||
payType.value = res.data; |
|||
}) |
|||
|
|||
await getCompanyList({ electronic_sheet_switch: 1 }).then((res: any) => { |
|||
companyList.value = res.data; |
|||
}) |
|||
|
|||
if (formData.id) { |
|||
loading.value = true |
|||
getElectronicSheetInfo(formData.id).then((res: any) => { |
|||
let data = res.data; |
|||
if (data) Object.keys(formData).forEach((key: string) => { |
|||
if (data[key] != undefined) formData[key] = data[key] |
|||
}) |
|||
loading.value = false |
|||
handleSelectCompanyChange(formData.express_company_id, true) |
|||
}) |
|||
} |
|||
} |
|||
|
|||
init(); |
|||
|
|||
const handleSelectCompanyChange = (value: any,load: any = false) => { |
|||
if (!value) { |
|||
expTypeList.value = []; |
|||
printStyleList.value = []; |
|||
return; |
|||
} |
|||
} |
|||
|
|||
init() |
|||
|
|||
const handleSelectCompanyChange = (value: any, load: any = false) => { |
|||
if (!value) { |
|||
expTypeList.value = [] |
|||
printStyleList.value = [] |
|||
return |
|||
} |
|||
|
|||
for (let i = 0; i < companyList.value.length; i++) { |
|||
if (companyList.value[i].company_id == value) { |
|||
expTypeList.value = companyList.value[i].exp_type |
|||
expTypeList.value.forEach((item: any) => { |
|||
if (item.value) item.value = parseInt(item.value) |
|||
}) |
|||
printStyleList.value = companyList.value[i].print_style |
|||
|
|||
if (!load) { |
|||
if (expTypeList.value.length) { |
|||
formData.exp_type = expTypeList.value[0].value |
|||
} else { |
|||
formData.exp_type = 1 // 默认为1 |
|||
} |
|||
|
|||
for (let i = 0; i < companyList.value.length; i++) { |
|||
if (companyList.value[i].company_id == value) { |
|||
expTypeList.value = companyList.value[i].exp_type; |
|||
expTypeList.value.forEach((item: any) => { |
|||
if (item.value) item.value = parseInt(item.value); |
|||
}) |
|||
printStyleList.value = companyList.value[i].print_style; |
|||
|
|||
if (!load) { |
|||
if (expTypeList.value.length) { |
|||
formData.exp_type = expTypeList.value[0].value |
|||
} else { |
|||
formData.exp_type = 1; // 默认为1 |
|||
} |
|||
if (printStyleList.value.length) { |
|||
formData.print_style = printStyleList.value[0].value |
|||
} else { |
|||
formData.print_style = ''; // 默认为空 |
|||
} |
|||
} |
|||
break; |
|||
} |
|||
if (printStyleList.value.length) { |
|||
formData.print_style = printStyleList.value[0].value |
|||
} else { |
|||
formData.print_style = '' // 默认为空 |
|||
} |
|||
|
|||
} |
|||
break |
|||
} |
|||
|
|||
/** |
|||
* 确认 |
|||
* @param formEl |
|||
*/ |
|||
const confirm = async(formEl: FormInstance | undefined) => { |
|||
if (loading.value || !formEl) return |
|||
let save = formData.id ? editElectronicSheet : addElectronicSheet |
|||
|
|||
await formEl.validate(async(valid) => { |
|||
if (valid) { |
|||
|
|||
if (repeat.value) return |
|||
repeat.value = true |
|||
|
|||
let data = formData |
|||
|
|||
save(data).then(res => { |
|||
repeat.value = false |
|||
if (!formData.id) { |
|||
router.push('/shop/delivery/electronic_sheet') |
|||
} |
|||
}).catch(err => { |
|||
repeat.value = false |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
|
|||
/** |
|||
* 确认 |
|||
* @param formEl |
|||
*/ |
|||
const confirm = async (formEl: FormInstance | undefined) => { |
|||
if (loading.value || !formEl) return |
|||
let save = formData.id ? editElectronicSheet : addElectronicSheet |
|||
|
|||
await formEl.validate(async (valid) => { |
|||
if (valid) { |
|||
if (repeat.value) return |
|||
repeat.value = true |
|||
|
|||
let data = formData |
|||
|
|||
save(data) |
|||
.then((res) => { |
|||
repeat.value = false |
|||
if (!formData.id) { |
|||
router.push('/shop/delivery/electronic_sheet') |
|||
} |
|||
}) |
|||
.catch((err) => { |
|||
repeat.value = false |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
|
|||
const back = () => { |
|||
router.push('/shop/delivery/electronic_sheet') |
|||
} |
|||
const back = () => { |
|||
router.push('/shop/delivery/electronic_sheet') |
|||
} |
|||
</script> |
|||
|
|||
<style lang="scss" scoped></style> |
|||
|
|||
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -1,38 +1,37 @@ |
|||
<template> |
|||
<!-- 内容 --> |
|||
<div class="content-wrap" v-show="diyStore.editTab == 'content'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t('memberStyle') }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('bgUrl')"> |
|||
<upload-image v-model="diyStore.editComponent.bgUrl" :limit="1"/> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
<!-- 内容 --> |
|||
<div class="content-wrap" v-show="diyStore.editTab == 'content'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t('memberStyle') }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('bgUrl')"> |
|||
<upload-image v-model="diyStore.editComponent.bgUrl" :limit="1" /> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- 样式 --> |
|||
<div class="style-wrap" v-show="diyStore.editTab == 'style'"> |
|||
<!-- 组件样式 --> |
|||
<slot name="style"></slot> |
|||
</div> |
|||
<!-- 样式 --> |
|||
<div class="style-wrap" v-show="diyStore.editTab == 'style'"> |
|||
<!-- 组件样式 --> |
|||
<slot name="style"></slot> |
|||
</div> |
|||
</template> |
|||
|
|||
<script lang="ts" setup> |
|||
import { t } from '@/lang' |
|||
import useDiyStore from '@/stores/modules/diy' |
|||
|
|||
const diyStore:any = useDiyStore() |
|||
diyStore.editComponent.ignore = ['componentBgColor','componentBgUrl'] // 忽略公共属性 |
|||
const diyStore: any = useDiyStore() |
|||
diyStore.editComponent.ignore = ['componentBgColor', 'componentBgUrl'] // 忽略公共属性 |
|||
|
|||
// 组件验证 |
|||
diyStore.editComponent.verify = (index: number) => { |
|||
const res = { code: true, message: '' } |
|||
return res |
|||
const res = { code: true, message: '' } |
|||
return res |
|||
} |
|||
|
|||
defineExpose({}) |
|||
|
|||
</script> |
|||
|
|||
<style lang="scss" scoped></style> |
|||
|
|||
@ -1,185 +1,281 @@ |
|||
<template> |
|||
<!-- 内容 --> |
|||
<div class="content-wrap" v-show="diyStore.editTab == 'content'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t("selectSource") }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('goodsSelectPopupSelectGoodsButton')"> |
|||
<el-radio-group v-model="diyStore.editComponent.source" :title="t('goodsSelectPopupSelectGoodsButton')"> |
|||
<el-radio label="all">{{ t('defaultGoodsSelect') }}</el-radio> |
|||
<el-radio label="custom">{{ t('manualSelectionSources') }}</el-radio> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
<el-form-item :label="t('customGoods')" v-if="diyStore.editComponent.source == 'custom'"> |
|||
<goods-select-popup ref="goodsSelectPopupRef" v-model="diyStore.editComponent.goods_ids" :min="diyStore.editComponent.list.length" :max="diyStore.editComponent.list.length" /> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
<!-- 内容 --> |
|||
<div class="content-wrap" v-show="diyStore.editTab == 'content'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t('selectSource') }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('goodsSelectPopupSelectGoodsButton')"> |
|||
<el-radio-group |
|||
v-model="diyStore.editComponent.source" |
|||
:title="t('goodsSelectPopupSelectGoodsButton')" |
|||
> |
|||
<el-radio label="all">{{ t('defaultGoodsSelect') }}</el-radio> |
|||
<el-radio label="custom">{{ |
|||
t('manualSelectionSources') |
|||
}}</el-radio> |
|||
</el-radio-group> |
|||
</el-form-item> |
|||
<el-form-item |
|||
:label="t('customGoods')" |
|||
v-if="diyStore.editComponent.source == 'custom'" |
|||
> |
|||
<goods-select-popup |
|||
ref="goodsSelectPopupRef" |
|||
v-model="diyStore.editComponent.goods_ids" |
|||
:min="diyStore.editComponent.list.length" |
|||
:max="diyStore.editComponent.list.length" |
|||
/> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
|
|||
<div class="edit-attr-item-wrap"> |
|||
<el-form label-width="120px" class="px-[10px]"> |
|||
<h3 class="mb-[10px]">{{ t('activeCubeBlockContent') }}</h3> |
|||
<p class="text-sm text-gray-400 mb-[10px]">{{ t('dragMouseAdjustOrder') }}</p> |
|||
<div ref="blockBoxRef"> |
|||
<div v-for="(item,index) in diyStore.editComponent.list" :key="item.id" class="item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]"> |
|||
<el-form-item :label="t('activeCubeTitle')"> |
|||
<el-input v-model.trim="item.title.text" :placeholder="t('activeCubeTitlePlaceholder')" clearable maxlength="4" show-word-limit/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('shopGoodsRecommendComponentTag')"> |
|||
<el-input v-model.trim="item.moreTitle.text" :placeholder="t('shopGoodsRecommendComponentTagPlaceholder')" clearable maxlength="2" show-word-limit/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeButton')"> |
|||
<el-input v-model.trim="item.button.text" :placeholder="t('activeCubeButtonPlaceholder')" clearable maxlength="2" show-word-limit/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeSubTitleTextColor')"> |
|||
<el-color-picker v-model="item.title.textColor" show-alpha :predefine="diyStore.predefineColors" /> |
|||
</el-form-item> |
|||
<el-form-item :label="t('shopGoodsRecommendComponentTagcolor')"> |
|||
<el-color-picker v-model="item.moreTitle.startColor" show-alpha :predefine="diyStore.predefineColors" /> |
|||
<icon name="iconfont iconmap-connect" size="20px" class="block !text-gray-400 mx-[5px]"/> |
|||
<el-color-picker v-model="item.moreTitle.endColor" show-alpha :predefine="diyStore.predefineColors"/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeButtonColor')"> |
|||
<el-color-picker v-model="item.button.color" show-alpha :predefine="diyStore.predefineColors" /> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeListFrameColor')"> |
|||
<el-color-picker v-model="item.listFrame.startColor" show-alpha :predefine="diyStore.predefineColors" /> |
|||
<icon name="iconfont iconmap-connect" size="20px" class="block !text-gray-400 mx-[5px]"/> |
|||
<el-color-picker v-model="item.listFrame.endColor" show-alpha :predefine="diyStore.predefineColors"/> |
|||
</el-form-item> |
|||
<div class="del absolute cursor-pointer z-[2] top-[-8px] right-[-8px]" v-show="diyStore.editComponent.list.length > 1" @click="deleteTempFn(index)"> |
|||
<icon name="element CircleCloseFilled" color="#bbb" size="20px"/> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<el-button v-show="diyStore.editComponent.list.length < 10" class="w-full" @click="addItem">{{ t('activeCubeAddItem') }}</el-button> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
<div class="edit-attr-item-wrap"> |
|||
<el-form label-width="120px" class="px-[10px]"> |
|||
<h3 class="mb-[10px]">{{ t('activeCubeBlockContent') }}</h3> |
|||
<p class="text-sm text-gray-400 mb-[10px]"> |
|||
{{ t('dragMouseAdjustOrder') }} |
|||
</p> |
|||
<div ref="blockBoxRef"> |
|||
<div |
|||
v-for="(item, index) in diyStore.editComponent.list" |
|||
:key="item.id" |
|||
class="item-wrap p-[10px] pb-0 relative border border-dashed border-gray-300 mb-[16px]" |
|||
> |
|||
<el-form-item :label="t('activeCubeTitle')"> |
|||
<el-input |
|||
v-model.trim="item.title.text" |
|||
:placeholder="t('activeCubeTitlePlaceholder')" |
|||
clearable |
|||
maxlength="4" |
|||
show-word-limit |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('shopGoodsRecommendComponentTag')"> |
|||
<el-input |
|||
v-model.trim="item.moreTitle.text" |
|||
:placeholder="t('shopGoodsRecommendComponentTagPlaceholder')" |
|||
clearable |
|||
maxlength="2" |
|||
show-word-limit |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeButton')"> |
|||
<el-input |
|||
v-model.trim="item.button.text" |
|||
:placeholder="t('activeCubeButtonPlaceholder')" |
|||
clearable |
|||
maxlength="2" |
|||
show-word-limit |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeSubTitleTextColor')"> |
|||
<el-color-picker |
|||
v-model="item.title.textColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('shopGoodsRecommendComponentTagcolor')"> |
|||
<el-color-picker |
|||
v-model="item.moreTitle.startColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
<icon |
|||
name="iconfont iconmap-connect" |
|||
size="20px" |
|||
class="block !text-gray-400 mx-[5px]" |
|||
/> |
|||
<el-color-picker |
|||
v-model="item.moreTitle.endColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeCubeButtonColor')"> |
|||
<el-color-picker |
|||
v-model="item.button.color" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('activeListFrameColor')"> |
|||
<el-color-picker |
|||
v-model="item.listFrame.startColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
<icon |
|||
name="iconfont iconmap-connect" |
|||
size="20px" |
|||
class="block !text-gray-400 mx-[5px]" |
|||
/> |
|||
<el-color-picker |
|||
v-model="item.listFrame.endColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
</el-form-item> |
|||
<div |
|||
class="del absolute cursor-pointer z-[2] top-[-8px] right-[-8px]" |
|||
v-show="diyStore.editComponent.list.length > 1" |
|||
@click="deleteTempFn(index)" |
|||
> |
|||
<icon name="element CircleCloseFilled" color="#bbb" size="20px" /> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<el-button |
|||
v-show="diyStore.editComponent.list.length < 10" |
|||
class="w-full" |
|||
@click="addItem" |
|||
>{{ t('activeCubeAddItem') }}</el-button |
|||
> |
|||
</el-form> |
|||
</div> |
|||
</div> |
|||
|
|||
<!-- 样式 --> |
|||
<div class="style-wrap" v-show="diyStore.editTab == 'style'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t('goodsStyle') }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('goodsPriceColor')"> |
|||
<el-color-picker v-model="diyStore.editComponent.priceStyle.mainColor" show-alpha :predefine="diyStore.predefineColors" /> |
|||
</el-form-item> |
|||
<el-form-item :label="t('topRounded')"> |
|||
<el-slider v-model="diyStore.editComponent.topElementRounded" show-input size="small" class="ml-[10px] diy-nav-slider" :max="50" /> |
|||
</el-form-item> |
|||
<el-form-item :label="t('bottomRounded')"> |
|||
<el-slider v-model="diyStore.editComponent.bottomElementRounded" show-input size="small" class="ml-[10px] diy-nav-slider" :max="50" /> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
<!-- 组件样式 --> |
|||
<slot name="style"></slot> |
|||
</div> |
|||
<!-- 样式 --> |
|||
<div class="style-wrap" v-show="diyStore.editTab == 'style'"> |
|||
<div class="edit-attr-item-wrap"> |
|||
<h3 class="mb-[10px]">{{ t('goodsStyle') }}</h3> |
|||
<el-form label-width="80px" class="px-[10px]"> |
|||
<el-form-item :label="t('goodsPriceColor')"> |
|||
<el-color-picker |
|||
v-model="diyStore.editComponent.priceStyle.mainColor" |
|||
show-alpha |
|||
:predefine="diyStore.predefineColors" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('topRounded')"> |
|||
<el-slider |
|||
v-model="diyStore.editComponent.topElementRounded" |
|||
show-input |
|||
size="small" |
|||
class="ml-[10px] diy-nav-slider" |
|||
:max="50" |
|||
/> |
|||
</el-form-item> |
|||
<el-form-item :label="t('bottomRounded')"> |
|||
<el-slider |
|||
v-model="diyStore.editComponent.bottomElementRounded" |
|||
show-input |
|||
size="small" |
|||
class="ml-[10px] diy-nav-slider" |
|||
:max="50" |
|||
/> |
|||
</el-form-item> |
|||
</el-form> |
|||
</div> |
|||
<!-- 组件样式 --> |
|||
<slot name="style"></slot> |
|||
</div> |
|||
</template> |
|||
|
|||
<script lang="ts" setup> |
|||
import { t } from '@/lang' |
|||
import { img } from '@/utils/common' |
|||
import useDiyStore from '@/stores/modules/diy' |
|||
import { ref, reactive, onMounted,nextTick } from 'vue' |
|||
import { ref, reactive, onMounted, nextTick } from 'vue' |
|||
import goodsSelectPopup from '@/addon/shop/views/goods/components/goods-select-popup.vue' |
|||
import Sortable from 'sortablejs' |
|||
import { range } from 'lodash-es' |
|||
|
|||
const diyStore:any = useDiyStore() |
|||
const diyStore: any = useDiyStore() |
|||
diyStore.editComponent.ignore = ['componentBgUrl'] // 忽略公共属性 |
|||
|
|||
// 组件验证 |
|||
diyStore.editComponent.verify = (index: number) => { |
|||
const res = { code: true, message: '' } |
|||
diyStore.value[index].list.forEach((item: any) => { |
|||
if (!item.title.text) { |
|||
res.code = false |
|||
res.message = t('activeCubeTitlePlaceholder') |
|||
return res |
|||
} |
|||
if (!item.moreTitle.text) { |
|||
res.code = false |
|||
res.message = t('shopGoodsRecommendComponentTagPlaceholder') |
|||
return res |
|||
} |
|||
if (!item.button.text) { |
|||
res.code = false |
|||
res.message = t('activeCubeButtonPlaceholder') |
|||
return res |
|||
} |
|||
}) |
|||
|
|||
if (diyStore.value[index].source == 'custom' && diyStore.value[index].goods_ids.length < diyStore.value[index].list.length) { |
|||
res.code = false |
|||
res.message = t('goodsPlaceholder') |
|||
return res |
|||
const res = { code: true, message: '' } |
|||
diyStore.value[index].list.forEach((item: any) => { |
|||
if (!item.title.text) { |
|||
res.code = false |
|||
res.message = t('activeCubeTitlePlaceholder') |
|||
return res |
|||
} |
|||
if (!item.moreTitle.text) { |
|||
res.code = false |
|||
res.message = t('shopGoodsRecommendComponentTagPlaceholder') |
|||
return res |
|||
} |
|||
if (!item.button.text) { |
|||
res.code = false |
|||
res.message = t('activeCubeButtonPlaceholder') |
|||
return res |
|||
} |
|||
}) |
|||
|
|||
if ( |
|||
diyStore.value[index].source == 'custom' && |
|||
diyStore.value[index].goods_ids.length < diyStore.value[index].list.length |
|||
) { |
|||
res.code = false |
|||
res.message = t('goodsPlaceholder') |
|||
return res |
|||
} |
|||
return res |
|||
} |
|||
|
|||
diyStore.editComponent.list.forEach((item: any) => { |
|||
if (!item.id) item.id = diyStore.generateRandom() |
|||
if (!item.id) item.id = diyStore.generateRandom() |
|||
}) |
|||
|
|||
const blockBoxRef = ref() |
|||
|
|||
onMounted(() => { |
|||
nextTick(() => { |
|||
const sortable = Sortable.create(blockBoxRef.value, { |
|||
group: 'item-wrap', |
|||
animation: 200, |
|||
onEnd: event => { |
|||
const temp = diyStore.editComponent.list[event.oldIndex!] |
|||
diyStore.editComponent.list.splice(event.oldIndex!, 1) |
|||
diyStore.editComponent.list.splice(event.newIndex!, 0, temp) |
|||
sortable.sort( |
|||
range(diyStore.editComponent.list.length).map(value => { |
|||
return value.toString() |
|||
}) |
|||
) |
|||
} |
|||
}) |
|||
|
|||
let listNum = diyStore.editComponent.list.length; |
|||
let goodsIdNum = diyStore.editComponent.goods_ids.length; |
|||
diyStore.editComponent.goods_ids.splice(listNum, goodsIdNum); |
|||
nextTick(() => { |
|||
const sortable = Sortable.create(blockBoxRef.value, { |
|||
group: 'item-wrap', |
|||
animation: 200, |
|||
onEnd: (event) => { |
|||
const temp = diyStore.editComponent.list[event.oldIndex!] |
|||
diyStore.editComponent.list.splice(event.oldIndex!, 1) |
|||
diyStore.editComponent.list.splice(event.newIndex!, 0, temp) |
|||
sortable.sort( |
|||
range(diyStore.editComponent.list.length).map((value) => { |
|||
return value.toString() |
|||
}) |
|||
) |
|||
}, |
|||
}) |
|||
|
|||
let listNum = diyStore.editComponent.list.length |
|||
let goodsIdNum = diyStore.editComponent.goods_ids.length |
|||
diyStore.editComponent.goods_ids.splice(listNum, goodsIdNum) |
|||
}) |
|||
}) |
|||
|
|||
const addItem = () => { |
|||
diyStore.editComponent.list.push({ |
|||
id: diyStore.generateRandom(), |
|||
title: { |
|||
text: '标题', |
|||
textColor: '#303133' |
|||
}, |
|||
moreTitle: { |
|||
text: '精选', |
|||
startColor: '#FF7234', |
|||
endColor: '#FF213F' |
|||
}, |
|||
listFrame: { |
|||
startColor: '#FFE5E5', |
|||
endColor: '#FFF5F0' |
|||
}, |
|||
button : { |
|||
text: "首单", |
|||
textColor: "#FFFFFF", |
|||
color: "#FF1128", |
|||
}, |
|||
goodsId: [], |
|||
}) |
|||
diyStore.editComponent.list.push({ |
|||
id: diyStore.generateRandom(), |
|||
title: { |
|||
text: '标题', |
|||
textColor: '#303133', |
|||
}, |
|||
moreTitle: { |
|||
text: '精选', |
|||
startColor: '#FF7234', |
|||
endColor: '#FF213F', |
|||
}, |
|||
listFrame: { |
|||
startColor: '#FFE5E5', |
|||
endColor: '#FFF5F0', |
|||
}, |
|||
button: { |
|||
text: '首单', |
|||
textColor: '#FFFFFF', |
|||
color: '#FF1128', |
|||
}, |
|||
goodsId: [], |
|||
}) |
|||
} |
|||
|
|||
const deleteTempFn = (index) =>{ |
|||
diyStore.editComponent.list.splice(index,1); |
|||
diyStore.editComponent.goods_ids.splice(index,1); |
|||
const deleteTempFn = (index) => { |
|||
diyStore.editComponent.list.splice(index, 1) |
|||
diyStore.editComponent.goods_ids.splice(index, 1) |
|||
} |
|||
|
|||
defineExpose({}) |
|||
|
|||
</script> |
|||
|
|||
<style lang="scss" scoped></style> |
|||
|
|||
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue