@feedmepos/mf-order-setting 0.0.26 → 0.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{KioskDevicesView-BiF6v7Zj.js → KioskDevicesView-BgXkmJ7v.js} +1 -1
- package/dist/KioskDevicesView.vue_vue_type_script_setup_true_lang-DZT0BuUN.js +301 -0
- package/dist/{KioskSettingView-COhGcRtP.js → KioskSettingView-DyX3Wv_2.js} +3 -3
- package/dist/{KioskView-C1T-n1MY.js → KioskView-Bgff7QPc.js} +5 -5
- package/dist/OrderSettingsView-C63s4uCD.js +74334 -0
- package/dist/app-Dp79Gu_F.js +1016 -0
- package/dist/app.js +1 -1
- package/dist/{dayjs.min-BHDLv42p.js → dayjs.min-B2ZkfNUH.js} +633 -641
- package/dist/frontend/mf-order/src/App.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/Entry.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/api/business/index.d.ts +5 -0
- package/dist/frontend/mf-order/src/api/effects/index.d.ts +3 -0
- package/dist/frontend/mf-order/src/api/index.d.ts +2 -0
- package/dist/frontend/mf-order/src/api/kiosk/index.d.ts +2 -0
- package/dist/frontend/mf-order/src/app.d.ts +336 -0
- package/dist/frontend/mf-order/src/components/GoogleMap.vue.d.ts +3 -5
- package/dist/frontend/mf-order/src/main.d.ts +79 -0
- package/dist/frontend/mf-order/src/modules/kiosk/interface.d.ts +5 -1
- package/dist/frontend/mf-order/src/stores/business/index.d.ts +62 -0
- package/dist/frontend/mf-order/src/stores/kiosk/index.d.ts +16 -1
- package/dist/frontend/mf-order/src/stores/menu/menu.d.ts +207 -112
- package/dist/frontend/mf-order/src/stores/restaurant/index.d.ts +81 -78
- package/dist/frontend/mf-order/src/views/all-orders/ActionMenuCell.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/all-orders/FilterRestaurant.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/all-orders/FilterStatus.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/all-orders/FilterStatusMenu.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/all-orders/ReflowOrder.vue.d.ts +56 -54
- package/dist/frontend/mf-order/src/views/all-orders/UpdateDeliveryOrderDialog.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/KioskSummary.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/KioskView.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/devices/KioskDeviceCard.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/devices/KioskDeviceDetail.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/devices/KioskDevicesView.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/devices/KioskOtpDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/devices/KioskUnbindConfirm.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskDineInSection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskDisplayStandSection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskEnablePaxDialogSection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskInstructionSection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskMenuItemSection.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskPaymentTypeSection.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskPickAtCounterSection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskSettingView.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/kiosk/settings/KioskTakeawaySection.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/delivery/DeliveryList.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/delivery/components/ManualIntegratedDeliverySetting.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/components/TaxInput.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/CurrencyInput.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/DeliveryCustomTime.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/DeliveryOrder.vue.d.ts +6 -141
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/DeliveryTime.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/InHouseDelivery.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/TimePicker.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/inhouse/ZoneDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/ExternalSetting.vue.d.ts +6 -2
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/FeedmeDelivery.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/FoodpandaCampaignDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/FoodpandaSetting.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/GrabfoodSetting.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/IntegratedDelivery.vue.d.ts +5 -5
- package/dist/frontend/mf-order/src/views/order-settings/delivery/integrated-delivery/ShopeefoodSetting.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/dine-in/OfflinePaymentTypeDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/dine-in/OfflinePaymentTypeDialogContent.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/dine-in/PaymentType.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/discount-rule/DiscountRuleSetting.vue.d.ts +2 -0
- package/dist/frontend/mf-order/src/views/order-settings/pickup/AddressInput.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/pickup/CustomPayment.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PaymentSidesheet.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PickUpPointDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PickUpPointDialogContent.vue.d.ts +2 -137
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PickUpSettingDialog.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PickUpSettingDialogContent.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/pickup/PickupList.vue.d.ts +2 -2
- package/dist/frontend/mf-order/src/views/order-settings/pickup/Preorder.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/servicecharge/RateInput.vue.d.ts +1 -1
- package/dist/frontend/mf-order/src/views/order-settings/servicecharge/ServiceChargeRule.vue.d.ts +1 -1
- package/dist/frontend/mf-order/tsconfig.app.tsbuildinfo +1 -1
- package/dist/{index-DSCb3ndM.js → index-BXsnV_eO.js} +5 -5
- package/dist/{index-B5kfsi9C.js → index-DzQn92Tp.js} +2 -2
- package/dist/package/entity/booking/booking.do.d.ts +596 -551
- package/dist/package/entity/cursor/cursor.dto.d.ts +2 -2
- package/dist/package/entity/delivery/delivery.dto.d.ts +118 -109
- package/dist/package/entity/incoming-order/incoming-order-to-bill.dto.d.ts +349 -659
- package/dist/package/entity/incoming-order/incoming-order.do.d.ts +13800 -487
- package/dist/package/entity/incoming-order/incoming-order.dto.d.ts +746 -1245
- package/dist/package/entity/incoming-order/incoming-order.enum.d.ts +1 -1
- package/dist/package/entity/index.d.ts +1 -0
- package/dist/package/entity/kiosk/kiosk.do.d.ts +64 -0
- package/dist/package/entity/kiosk/kiosk.dto.d.ts +79 -0
- package/dist/package/entity/kiosk/marketing/marketing.dto.d.ts +1469 -621
- package/dist/package/entity/member/member.dto.d.ts +14 -7
- package/dist/package/entity/order/dine-in/dine-in.do.d.ts +8 -8
- package/dist/package/entity/order/dine-in/dine-in.dto.d.ts +4 -4
- package/dist/package/entity/order/effects/effect.dto.d.ts +154 -6
- package/dist/package/entity/order/menu/menu.dto.d.ts +12 -12
- package/dist/package/entity/order/order-item/order-item.dto.d.ts +101 -42
- package/dist/package/entity/order/order.do.d.ts +206 -601
- package/dist/package/entity/order/order.dto.d.ts +1096 -1600
- package/dist/package/entity/order/order.enum.d.ts +2 -2
- package/dist/package/entity/order-platform/external/menu/external-menu.dto.d.ts +8 -0
- package/dist/package/entity/order-platform/external/order/external-order.do.d.ts +8 -0
- package/dist/package/entity/order-platform/external/order/external-order.dto.d.ts +22 -3
- package/dist/package/entity/order-platform/external/order/external-order.enum.d.ts +1 -1
- package/dist/package/entity/order-platform/external/setting/external-setting.do.d.ts +5 -0
- package/dist/package/entity/order-platform/external/setting/external-setting.dto.d.ts +5 -0
- package/dist/package/entity/order-platform/external/zus/zus-menu.dto.d.ts +192 -0
- package/dist/package/entity/order-platform/foodpanda/foodpanda-order.do.d.ts +104 -0
- package/dist/package/entity/order-platform/foodpanda/foodpanda-order.dto.d.ts +152 -109
- package/dist/package/entity/order-platform/foodpanda/foodpanda-settings.do.d.ts +3 -0
- package/dist/package/entity/order-platform/foodpanda/foodpanda-settings.dto.d.ts +3 -0
- package/dist/package/entity/order-platform/foodpanda/foodpanda.enum.d.ts +2 -0
- package/dist/package/entity/order-platform/grabfood/grabfood-order.do.d.ts +139 -109
- package/dist/package/entity/order-platform/grabfood/grabfood-settings.do.d.ts +3 -0
- package/dist/package/entity/order-platform/grabfood/grabfood.dto.d.ts +112 -2
- package/dist/package/entity/order-platform/menu.dto.d.ts +31 -0
- package/dist/package/entity/order-platform/order-platform.dto.d.ts +6 -3
- package/dist/package/entity/order-platform/shopeefood/shopeefood-order.do.d.ts +164 -109
- package/dist/package/entity/order-platform/shopeefood/shopeefood-order.dto.d.ts +22 -0
- package/dist/package/entity/order-platform/shopeefood/shopeefood-settings.do.d.ts +3 -0
- package/dist/package/entity/order-platform/shopeefood/shopeefood-settings.dto.d.ts +3 -0
- package/dist/{queue.do-y-ubeoKZ.js → queue.do-BUtcyDk3.js} +53522 -50841
- package/package.json +4 -3
- package/src/api/business/index.ts +16 -0
- package/src/api/effects/index.ts +7 -0
- package/src/api/index.ts +9 -1
- package/src/api/kiosk/index.ts +9 -4
- package/src/app.ts +4 -1
- package/src/locales/en-US.json +24 -1
- package/src/locales/th-TH.json +31 -1
- package/src/locales/zh-CN.json +27 -1
- package/src/modules/kiosk/interface.ts +5 -1
- package/src/stores/business/index.ts +45 -0
- package/src/stores/kiosk/index.ts +9 -4
- package/src/stores/kiosk/mapper.ts +5 -1
- package/src/stores/restaurant/index.ts +3 -1
- package/src/views/kiosk/devices/KioskDeviceCard.vue +202 -80
- package/src/views/order-settings/OrderSettingsView.vue +17 -5
- package/src/views/order-settings/delivery/DeliverySetting.vue +1 -1
- package/src/views/order-settings/delivery/delivery.data.ts +2 -2
- package/src/views/order-settings/delivery/integrated-delivery/ExternalSetting.vue +14 -2
- package/src/views/order-settings/delivery/integrated-delivery/FoodpandaSetting.vue +2 -34
- package/src/views/order-settings/delivery/integrated-delivery/IntegratedDelivery.vue +15 -12
- package/src/views/order-settings/discount-rule/DiscountRuleSetting.vue +434 -0
- package/dist/KioskDevicesView.vue_vue_type_script_setup_true_lang-1r_DBAc-.js +0 -207
- package/dist/OrderSettingsView-CI5bdVXr.js +0 -72108
- package/dist/app-BfWp4ow3.js +0 -682
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feedmepos/mf-order-setting",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"module": "./dist/app.js",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -21,12 +21,13 @@
|
|
|
21
21
|
"build:dev": "cross-env NODE_ENV=dev vite build --mode dev",
|
|
22
22
|
"build:prod": "vite build --mode prod",
|
|
23
23
|
"type-check": "set NODE_OPTIONS=--max-old-space-size=16384 && vue-tsc --noEmit -p tsconfig.app.json --composite false",
|
|
24
|
+
"type-check:mac": "export NODE_OPTIONS=--max-old-space-size=16384 && vue-tsc --noEmit -p tsconfig.app.json --composite false",
|
|
24
25
|
"lint": "eslint . --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix --ignore-path .gitignore",
|
|
25
26
|
"format": "prettier --write src/"
|
|
26
27
|
},
|
|
27
28
|
"dependencies": {
|
|
28
|
-
"@feedmepos/core": "^2.14.
|
|
29
|
-
"@feedmepos/menu": "^1.5.
|
|
29
|
+
"@feedmepos/core": "^2.14.19",
|
|
30
|
+
"@feedmepos/menu": "^1.5.18",
|
|
30
31
|
"@feedmepos/mf-common": "1.20.0-beta.2",
|
|
31
32
|
"@feedmepos/ordering": "^0.0.3",
|
|
32
33
|
"@feedmepos/ui-library": "1.5.2-beta.1",
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { getData, businessClientInstance } from '@/api'
|
|
2
|
+
import { FdtoDiscountRuleRes, FdoDiscountRule } from '@feedmepos/core/entity'
|
|
3
|
+
|
|
4
|
+
export const businessApi = {
|
|
5
|
+
async readDiscountRule(businessId: string): Promise<FdtoDiscountRuleRes> {
|
|
6
|
+
const result = await businessClientInstance(businessId).get('/discount-rule')
|
|
7
|
+
return getData(result)
|
|
8
|
+
},
|
|
9
|
+
async updateDiscountRule(
|
|
10
|
+
businessId: string,
|
|
11
|
+
discountRule: FdoDiscountRule
|
|
12
|
+
): Promise<FdtoDiscountRuleRes> {
|
|
13
|
+
const result = await businessClientInstance(businessId).put('/discount-rule', discountRule)
|
|
14
|
+
return getData(result)
|
|
15
|
+
}
|
|
16
|
+
}
|
package/src/api/index.ts
CHANGED
|
@@ -12,6 +12,7 @@ interface ApiUrl {
|
|
|
12
12
|
menuBackendUrl: string
|
|
13
13
|
smsBackendUrl: string
|
|
14
14
|
accountBackendUrl: string
|
|
15
|
+
marketingBackendUrl: string
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
let apiUrl: ApiUrl | null = null
|
|
@@ -57,13 +58,15 @@ function generateBackendUrl(country: F_COUNTRY): ApiUrl {
|
|
|
57
58
|
const domain = `${isDev ? '-dev' : ''}${area}.feedmeapi.com`
|
|
58
59
|
const portalBackendUrl = `https://portal-v2${domain}`
|
|
59
60
|
const accountBackendUrl = `https://account${domain}`
|
|
61
|
+
const marketingBackendUrl = `https://portal-marketing${domain}`
|
|
60
62
|
return {
|
|
61
63
|
portalBackendUrl,
|
|
62
64
|
websocketBackendUrl: `wss://94ilf9iqc0.execute-api.ap-southeast-1.amazonaws.com/${isDev ? 'dev' : 'prod'}`,
|
|
63
65
|
linkedDeliveryBackend: `${portalBackendUrl}/linked-deliveries`,
|
|
64
66
|
menuBackendUrl: `${portalBackendUrl}/menu-v4`,
|
|
65
67
|
smsBackendUrl: `https://sms${domain}`,
|
|
66
|
-
accountBackendUrl
|
|
68
|
+
accountBackendUrl,
|
|
69
|
+
marketingBackendUrl
|
|
67
70
|
}
|
|
68
71
|
}
|
|
69
72
|
|
|
@@ -179,6 +182,11 @@ export const smsBackendClientInstance = (): AxiosInstance => {
|
|
|
179
182
|
return baseClientInstance('', 'portal', { url: smsBackendUrl })
|
|
180
183
|
}
|
|
181
184
|
|
|
185
|
+
export const marketingBackendClientInstance = (): AxiosInstance => {
|
|
186
|
+
const { marketingBackendUrl } = SvcConfig.getBackendUrl()
|
|
187
|
+
return baseClientInstance('', 'portal', { url: marketingBackendUrl })
|
|
188
|
+
}
|
|
189
|
+
|
|
182
190
|
export function getData<T>(response: AxiosResponse<T>): T {
|
|
183
191
|
return response.data
|
|
184
192
|
}
|
package/src/api/kiosk/index.ts
CHANGED
|
@@ -1,22 +1,27 @@
|
|
|
1
1
|
import { getData, restaurantClientInstance } from '@/api';
|
|
2
2
|
import { KioskOtpDto, KioskDeviceDto } from '@entity';
|
|
3
3
|
|
|
4
|
-
async function requestOtp()
|
|
4
|
+
async function requestOtp(): Promise<KioskOtpDto> {
|
|
5
5
|
const result = await restaurantClientInstance().get('/kiosk/otp');
|
|
6
6
|
return getData<KioskOtpDto>(result);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
-
async function getDevices(): Promise<KioskDeviceDto[]>{
|
|
9
|
+
async function getDevices(): Promise<KioskDeviceDto[]> {
|
|
10
10
|
const result = await restaurantClientInstance().get('/kiosk/devices');
|
|
11
11
|
return getData<KioskDeviceDto[]>(result);
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
async function unbind(machineId: string): Promise<void>{
|
|
14
|
+
async function unbind(machineId: string): Promise<void> {
|
|
15
15
|
await restaurantClientInstance().delete(`/kiosk/unbind/${machineId}`);
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
async function updateDevicePin(pinInfo: string, machineId: string): Promise<void> {
|
|
19
|
+
await restaurantClientInstance().put(`/kiosk/updateDevicePin/${machineId}`, { pinInfo });
|
|
20
|
+
}
|
|
21
|
+
|
|
18
22
|
export const KioskApi = {
|
|
19
23
|
requestOtp,
|
|
20
24
|
getDevices,
|
|
21
|
-
unbind
|
|
25
|
+
unbind,
|
|
26
|
+
updateDevicePin
|
|
22
27
|
};
|
package/src/app.ts
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import enUS from "./locales/en-US.json"
|
|
2
2
|
import zhCN from "./locales/zh-CN.json"
|
|
3
|
+
import thTh from "./locales/th-TH.json"
|
|
4
|
+
|
|
3
5
|
export type AppMessagesSchema = typeof enUS
|
|
4
6
|
|
|
5
7
|
export const i18nMessages = {
|
|
6
8
|
"en-US": enUS,
|
|
7
|
-
"zh-CN": zhCN
|
|
9
|
+
"zh-CN": zhCN,
|
|
10
|
+
"th-TH": thTh,
|
|
8
11
|
}
|
|
9
12
|
|
|
10
13
|
export { default as FmApp } from './App.vue'
|
package/src/locales/en-US.json
CHANGED
|
@@ -264,6 +264,29 @@
|
|
|
264
264
|
"pickupCatalog": "Pickup catalog",
|
|
265
265
|
"DeliverySettingUpdated": "Delivery setting updated.",
|
|
266
266
|
"selectPlatform": "Select Platform",
|
|
267
|
-
"platform": "Platform"
|
|
267
|
+
"platform": "Platform",
|
|
268
|
+
"discountRule": {
|
|
269
|
+
"add": "Add discount rule",
|
|
270
|
+
"description": "Define how the discount is applied to the bill. Require POS version {minPosVersion} or above.",
|
|
271
|
+
"effect": "Promotion/Vouchers",
|
|
272
|
+
"effectSelected": "{count} selected",
|
|
273
|
+
"effectUsedInOtherGroup": "Used in another rule",
|
|
274
|
+
"forceSync": "Force sync",
|
|
275
|
+
"latest": "Latest",
|
|
276
|
+
"loadingRestaurants": "Loading restaurants",
|
|
277
|
+
"maxTotalUses": "Max total uses",
|
|
278
|
+
"maxTotalUsesSublabel": "Maximum times promotions/vouchers can be used per bill",
|
|
279
|
+
"outdated": "Outdated",
|
|
280
|
+
"restaurantName": "Restaurant Name",
|
|
281
|
+
"restaurants": "Restaurants",
|
|
282
|
+
"restaurantsDescription": "Sync status of the discount rule across all restaurants",
|
|
283
|
+
"selectAllEffects": "Select all promotions/vouchers",
|
|
284
|
+
"selectEffects": "Select promotions/vouchers",
|
|
285
|
+
"status": "Status",
|
|
286
|
+
"syncSuccess": "Discount rule setting synced to all restaurants",
|
|
287
|
+
"title": "Discount Rule",
|
|
288
|
+
"updateSuccess": "Discount rule setting updated",
|
|
289
|
+
"version": "Version"
|
|
290
|
+
}
|
|
268
291
|
}
|
|
269
292
|
}
|
package/src/locales/th-TH.json
CHANGED
|
@@ -252,6 +252,36 @@
|
|
|
252
252
|
"updatePickupSetting": "อัปเดตการตั้งค่าการรับสินค้า",
|
|
253
253
|
"updateSetting": "อัปเดตการตั้งค่า",
|
|
254
254
|
"vendorBearPercentage": "เปอร์เซ็นต์ที่ผู้ขายรับผิดชอบ",
|
|
255
|
-
"wednesday": "วันพุธ"
|
|
255
|
+
"wednesday": "วันพุธ",
|
|
256
|
+
"externalDelivery": "จัดการการจัดส่ง External",
|
|
257
|
+
"manageExternalDelivery": "จัดการการจัดส่งภายนอก",
|
|
258
|
+
"deliveryCatalog": "แคตตาล็อกการจัดส่ง",
|
|
259
|
+
"pickupCatalog": "แคตตาล็อกการรับสินค้า",
|
|
260
|
+
"DeliverySettingUpdated": "อัปเดตการตั้งค่าการจัดส่งแล้ว",
|
|
261
|
+
"selectPlatform": "เลือกแพลตฟอร์ม",
|
|
262
|
+
"platform": "แพลตฟอร์ม",
|
|
263
|
+
"discountRule": {
|
|
264
|
+
"add": "เพิ่มกฎส่วนลด",
|
|
265
|
+
"description": "กำหนดวิธีการใช้ส่วนลดในบิล ใช้ได้กับ POS เวอร์ชัน {minPosVersion} หรือใหม่กว่าเท่านั้น",
|
|
266
|
+
"effect": "โปรโมชั่น/บัตรกำนัล",
|
|
267
|
+
"effectSelected": "เลือกแล้ว {count} รายการ",
|
|
268
|
+
"effectUsedInOtherGroup": "ถูกใช้ในกฎอื่น",
|
|
269
|
+
"forceSync": "ซิงค์ข้อมูลแบบบังคับ",
|
|
270
|
+
"latest": "เผยแพร่ล่าสุด",
|
|
271
|
+
"loadingRestaurants": "กำลังโหลดร้านอาหาร",
|
|
272
|
+
"maxTotalUses": "จำนวนการใช้งานสูงสุด",
|
|
273
|
+
"maxTotalUsesSublabel": "จำนวนครั้งสูงสุดที่สามารถใช้โปรโมชั่น/บัตรกำนัลต่อบิล",
|
|
274
|
+
"outdated": "ล้าสมัย",
|
|
275
|
+
"restaurantName": "ชื่อร้านอาหาร",
|
|
276
|
+
"restaurants": "ร้านอาหาร",
|
|
277
|
+
"restaurantsDescription": "สถานะการซิงค์กฎส่วนลดของทุกร้านอาหาร",
|
|
278
|
+
"selectAllEffects": "เลือกโปรโมชั่น/บัตรกำนัลทั้งหมด",
|
|
279
|
+
"selectEffects": "เลือกโปรโมชั่น/บัตรกำนัล",
|
|
280
|
+
"status": "สถานะ",
|
|
281
|
+
"syncSuccess": "ซิงค์กฎส่วนลดไปยังร้านอาหารทั้งหมดเรียบร้อยแล้ว",
|
|
282
|
+
"title": "กฎส่วนลด",
|
|
283
|
+
"updateSuccess": "อัปเดตกฎส่วนลดเรียบร้อยแล้ว",
|
|
284
|
+
"version": "เวอร์ชัน"
|
|
285
|
+
}
|
|
256
286
|
}
|
|
257
287
|
}
|
package/src/locales/zh-CN.json
CHANGED
|
@@ -91,6 +91,7 @@
|
|
|
91
91
|
"edit": "编辑",
|
|
92
92
|
"editOfflinePayment": "编辑线下支付方式",
|
|
93
93
|
"editPickupPoint": "编辑取货地点",
|
|
94
|
+
"effectSelected": "已选择效果",
|
|
94
95
|
"enableServiceCharge": "启用服务费",
|
|
95
96
|
"end": "结束",
|
|
96
97
|
"enterAddress": "输入地址",
|
|
@@ -203,6 +204,8 @@
|
|
|
203
204
|
"search": "搜索",
|
|
204
205
|
"searchRestaurant": "搜索餐厅",
|
|
205
206
|
"selectAllItemsIncludeCustomItem": "全部 (包括自定义商品)",
|
|
207
|
+
"selectEffects": "选择效果",
|
|
208
|
+
"selectAllEffects": "选择所有效果",
|
|
206
209
|
"selectItem": "请选择",
|
|
207
210
|
"selectRestaurant": "选择餐厅",
|
|
208
211
|
"selectServiceChargeType": "选择服务费类型",
|
|
@@ -264,6 +267,29 @@
|
|
|
264
267
|
"pickupCatalog": "自取目录",
|
|
265
268
|
"DeliverySettingUpdated": "配送设置已更新",
|
|
266
269
|
"selectPlatform": "选择平台",
|
|
267
|
-
"platform": "平台"
|
|
270
|
+
"platform": "平台",
|
|
271
|
+
"discountRule": {
|
|
272
|
+
"add": "添加折扣规则",
|
|
273
|
+
"description": "定义折扣在账单中如何应用。仅适用于POS版本{minPosVersion}或更高版本。",
|
|
274
|
+
"effect": "促销/代金券",
|
|
275
|
+
"effectSelected": "已选择{count}个",
|
|
276
|
+
"effectUsedInOtherGroup": "已在其他规则中使用",
|
|
277
|
+
"forceSync": "强制同步",
|
|
278
|
+
"latest": "已发布",
|
|
279
|
+
"loadingRestaurants": "正在加载餐厅",
|
|
280
|
+
"maxTotalUses": "最大使用次数",
|
|
281
|
+
"maxTotalUsesSublabel": "每张账单最多可使用促销/代金券次数",
|
|
282
|
+
"outdated": "过时",
|
|
283
|
+
"restaurantName": "餐厅名称",
|
|
284
|
+
"restaurants": "餐厅",
|
|
285
|
+
"restaurantsDescription": "所有餐厅的折扣规则同步状态",
|
|
286
|
+
"selectAllEffects": "选择所有促销/代金券",
|
|
287
|
+
"selectEffects": "选择促销/代金券",
|
|
288
|
+
"status": "状态",
|
|
289
|
+
"syncSuccess": "折扣规则设置已同步到所有餐厅",
|
|
290
|
+
"title": "折扣规则",
|
|
291
|
+
"updateSuccess": "折扣规则设置已更新",
|
|
292
|
+
"version": "版本"
|
|
293
|
+
}
|
|
268
294
|
}
|
|
269
295
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Printer, ScannerInfoDto, KioskTerminalInfoDto } from '@entity';
|
|
1
|
+
import { Printer, ScannerInfoDto, KioskTerminalInfoDto, F_ORDER_PLATFORM_TYPE } from '@entity';
|
|
2
2
|
export interface MfKioskDeviceConfigs {
|
|
3
3
|
printerInfo?: Printer,
|
|
4
4
|
scannerInfo?: ScannerInfoDto,
|
|
@@ -10,6 +10,10 @@ export interface MfKioskDevice {
|
|
|
10
10
|
machineId: string,
|
|
11
11
|
config: MfKioskDeviceConfigs,
|
|
12
12
|
activatedAt: Date,
|
|
13
|
+
deviceAppType?: F_ORDER_PLATFORM_TYPE,
|
|
14
|
+
slotInfo?: string,
|
|
15
|
+
pinInfo?: string,
|
|
16
|
+
deviceAppVersion?: string,
|
|
13
17
|
}
|
|
14
18
|
|
|
15
19
|
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { defineStore } from 'pinia'
|
|
2
|
+
import { FdtoDiscountRuleRes, FdoDiscountRule } from '@feedmepos/core/entity'
|
|
3
|
+
import { useCoreStore } from '@feedmepos/mf-common'
|
|
4
|
+
import { ref } from 'vue'
|
|
5
|
+
import { businessApi } from '@/api/business'
|
|
6
|
+
|
|
7
|
+
interface BusinessState {
|
|
8
|
+
discountRule?: FdtoDiscountRuleRes
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
function initBusinessState(): BusinessState {
|
|
12
|
+
return {
|
|
13
|
+
discountRule: undefined
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export const useBusinessStore = defineStore('business', () => {
|
|
18
|
+
const coreStore = useCoreStore()
|
|
19
|
+
const state = ref(initBusinessState())
|
|
20
|
+
|
|
21
|
+
async function readDiscountRule(): Promise<FdtoDiscountRuleRes> {
|
|
22
|
+
if (!coreStore.currentBusiness.value?._id) {
|
|
23
|
+
throw new Error('No business selected.')
|
|
24
|
+
}
|
|
25
|
+
const discountRule = await businessApi.readDiscountRule(coreStore.currentBusiness.value._id)
|
|
26
|
+
state.value.discountRule = discountRule
|
|
27
|
+
return discountRule
|
|
28
|
+
}
|
|
29
|
+
async function updateDiscountRule(discountRule: FdoDiscountRule): Promise<FdtoDiscountRuleRes> {
|
|
30
|
+
if (!coreStore.currentBusiness.value?._id) {
|
|
31
|
+
throw new Error('No business selected.')
|
|
32
|
+
}
|
|
33
|
+
const updatedRule = await businessApi.updateDiscountRule(
|
|
34
|
+
coreStore.currentBusiness.value._id,
|
|
35
|
+
discountRule
|
|
36
|
+
)
|
|
37
|
+
state.value.discountRule = updatedRule
|
|
38
|
+
return updatedRule
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
state: state.value,
|
|
42
|
+
readDiscountRule,
|
|
43
|
+
updateDiscountRule
|
|
44
|
+
}
|
|
45
|
+
})
|
|
@@ -5,7 +5,7 @@ import { type MfKioskDevice } from "../../modules/kiosk/interface";
|
|
|
5
5
|
import { KioskMapper } from "./mapper";
|
|
6
6
|
|
|
7
7
|
interface State {
|
|
8
|
-
otp
|
|
8
|
+
otp: string;
|
|
9
9
|
devices: MfKioskDevice[];
|
|
10
10
|
}
|
|
11
11
|
|
|
@@ -16,25 +16,30 @@ export const useKioskStore = defineStore('kiosk', () => {
|
|
|
16
16
|
devices: [],
|
|
17
17
|
});
|
|
18
18
|
|
|
19
|
-
async function requestOtp(){
|
|
19
|
+
async function requestOtp() {
|
|
20
20
|
const result = await KioskApi.requestOtp();
|
|
21
21
|
state.value.otp = result.otp;
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
async function getDevices(){
|
|
24
|
+
async function getDevices() {
|
|
25
25
|
const result = await KioskApi.getDevices();
|
|
26
26
|
state.value.devices = result.map((r) => KioskMapper.toMfKioskDevice(r));
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
async function unbind(machineId: string){
|
|
29
|
+
async function unbind(machineId: string) {
|
|
30
30
|
await KioskApi.unbind(machineId);
|
|
31
31
|
await getDevices();
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
+
async function updateDevicePin(pinInfo: string, machineId: string) {
|
|
35
|
+
await KioskApi.updateDevicePin(pinInfo, machineId);
|
|
36
|
+
}
|
|
37
|
+
|
|
34
38
|
return {
|
|
35
39
|
state: state.value,
|
|
36
40
|
requestOtp,
|
|
37
41
|
getDevices,
|
|
38
42
|
unbind,
|
|
43
|
+
updateDevicePin
|
|
39
44
|
}
|
|
40
45
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type MfKioskDevice } from "@/modules/kiosk/interface";
|
|
2
2
|
import type { KioskDeviceDto } from "@entity";
|
|
3
3
|
|
|
4
|
-
const toMfKioskDevice = (dto
|
|
4
|
+
const toMfKioskDevice = (dto: KioskDeviceDto): MfKioskDevice => {
|
|
5
5
|
return {
|
|
6
6
|
name: dto.name ?? 'N/A',
|
|
7
7
|
machineId: dto.machineId,
|
|
@@ -11,6 +11,10 @@ const toMfKioskDevice = (dto : KioskDeviceDto) : MfKioskDevice => {
|
|
|
11
11
|
terminalInfo: dto.terminalInfo ?? undefined,
|
|
12
12
|
},
|
|
13
13
|
activatedAt: tokenToActivatedAt(dto.token),
|
|
14
|
+
deviceAppType: dto.deviceAppType ?? undefined,
|
|
15
|
+
slotInfo: dto.slotInfo ?? undefined,
|
|
16
|
+
pinInfo: dto.pinInfo ?? undefined,
|
|
17
|
+
deviceAppVersion: dto.deviceAppVersion ?? undefined,
|
|
14
18
|
};
|
|
15
19
|
};
|
|
16
20
|
|
|
@@ -13,6 +13,8 @@ import {
|
|
|
13
13
|
type FdoAddress,
|
|
14
14
|
type FdoProfile,
|
|
15
15
|
FdoRestaurant,
|
|
16
|
+
FdoRestaurantSetting,
|
|
17
|
+
type FdoEffectGroup
|
|
16
18
|
} from '@feedmepos/core/entity'
|
|
17
19
|
import { FdoExternalSetting, FdoGrabfoodSettings } from '@entity'
|
|
18
20
|
import { FeatureFlag, Pos } from '@feedmepos/core'
|
|
@@ -145,6 +147,6 @@ export const useRestaurantStore = defineStore('restaurant', () => {
|
|
|
145
147
|
updateIntegratedGrabfoodDelivery,
|
|
146
148
|
updateIntegratedShopeefoodDelivery,
|
|
147
149
|
updateExternalDelivery,
|
|
148
|
-
getRestaurantEPayment
|
|
150
|
+
getRestaurantEPayment,
|
|
149
151
|
}
|
|
150
152
|
})
|