@feedmepos/mf-order-setting 0.0.38 → 0.0.43

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.
Files changed (51) hide show
  1. package/dist/{KioskDevicesView-DoTQRyXe.js → KioskDevicesView-KBpXQJmy.js} +1 -1
  2. package/dist/{KioskDevicesView.vue_vue_type_script_setup_true_lang-DB0dvpBG.js → KioskDevicesView.vue_vue_type_script_setup_true_lang-taf41a-7.js} +2 -2
  3. package/dist/KioskSettingView-DG12ZvfT.js +528 -0
  4. package/dist/{KioskView-4-s6RwC6.js → KioskView-KNiT-upH.js} +125 -119
  5. package/dist/{OrderSettingsView-BqgGXVhY.js → OrderSettingsView-CoAGawQi.js} +11206 -12410
  6. package/dist/{app-BbOgWoeI.js → app-Db1lhCv7.js} +14 -11
  7. package/dist/app.js +1 -1
  8. package/dist/{dayjs.min-COLd3dVw.js → dayjs.min-D9bsUd57.js} +232 -242
  9. package/dist/frontend/mf-order/src/app.d.ts +6 -3
  10. package/dist/frontend/mf-order/src/main.d.ts +6 -3
  11. package/dist/frontend/mf-order/src/stores/order-setting/index.d.ts +3 -3
  12. package/dist/frontend/mf-order/src/stores/restaurant/index.d.ts +1 -1
  13. package/dist/frontend/mf-order/src/views/order-settings/delivery/components/ManualIntegratedDeliverySetting.vue.d.ts +5 -0
  14. package/dist/frontend/mf-order/tsconfig.app.tsbuildinfo +1 -1
  15. package/dist/{index-BewBuJGi.js → index-D_Tmm1qL.js} +2 -2
  16. package/dist/{menu.dto-Bf0Evx6J.js → menu.dto-BY9dVf93.js} +8216 -8201
  17. package/dist/package/entity/delivery/linked-delivery.do.d.ts +9 -0
  18. package/dist/package/entity/incoming-order/incoming-order-to-bill.dto.d.ts +17 -17
  19. package/dist/package/entity/incoming-order/incoming-order.do.d.ts +21 -21
  20. package/dist/package/entity/incoming-order/incoming-order.dto.d.ts +18 -18
  21. package/dist/package/entity/order/dine-in/dine-in.do.d.ts +11 -11
  22. package/dist/package/entity/order/dine-in/dine-in.dto.d.ts +4 -4
  23. package/dist/package/entity/order/menu/menu.dto.d.ts +4 -4
  24. package/dist/package/entity/order/order.do.d.ts +8 -8
  25. package/dist/package/entity/order/order.dto.d.ts +38 -38
  26. package/dist/package/entity/order/order.enum.d.ts +1 -1
  27. package/dist/package/entity/order-setting/order-setting.do.d.ts +5 -5
  28. package/dist/package/entity/order-setting/order-setting.dto.d.ts +10 -10
  29. package/dist/package/entity/order-setting/sms/sms.do.d.ts +3 -3
  30. package/dist/package/entity/order-setting/sms/sms.dto.d.ts +3 -3
  31. package/dist/package/entity/queue/queue.dto.d.ts +4 -4
  32. package/package.json +2 -2
  33. package/src/locales/en-US.json +2 -1
  34. package/src/locales/th-TH.json +2 -1
  35. package/src/locales/zh-CN.json +2 -1
  36. package/src/views/kiosk/KioskView.vue +16 -4
  37. package/src/views/kiosk/settings/KioskSettingView.vue +193 -122
  38. package/src/views/order-settings/OrderSettingsView.vue +10 -10
  39. package/src/views/order-settings/delivery/DeliverySetting.vue +12 -17
  40. package/src/views/order-settings/delivery/components/ManualIntegratedDeliverySetting.vue +21 -2
  41. package/src/views/order-settings/delivery/delivery.ts +9 -5
  42. package/src/views/order-settings/delivery/integrated-delivery/ExternalSetting.vue +3 -17
  43. package/dist/KioskSettingView-DRpVR7Ij.js +0 -843
  44. package/dist/frontend/mf-order/src/views/kiosk/settings/KioskDineInSection.vue.d.ts +0 -10
  45. package/dist/frontend/mf-order/src/views/kiosk/settings/KioskEnablePaxDialogSection.vue.d.ts +0 -9
  46. package/dist/frontend/mf-order/src/views/kiosk/settings/KioskMenuItemSection.vue.d.ts +0 -9
  47. package/dist/frontend/mf-order/src/views/kiosk/settings/KioskTakeawaySection.vue.d.ts +0 -10
  48. package/src/views/kiosk/settings/KioskDineInSection.vue +0 -68
  49. package/src/views/kiosk/settings/KioskEnablePaxDialogSection.vue +0 -33
  50. package/src/views/kiosk/settings/KioskMenuItemSection.vue +0 -27
  51. package/src/views/kiosk/settings/KioskTakeawaySection.vue +0 -66
@@ -174,13 +174,7 @@ import type {
174
174
  FdoRestaurantFeedmeDelivery,
175
175
  FdoRestaurantInHouseDelivery
176
176
  } from '@feedmepos/core/entity'
177
- import {
178
- F_COUNTRY,
179
- F_DELIVERY_TYPE,
180
- F_FEATURE,
181
- F_ORDER_PLATFORM,
182
- F_RESTAURANT_FEATURE
183
- } from '@feedmepos/core/entity'
177
+ import { F_DELIVERY_TYPE, F_ORDER_PLATFORM, F_RESTAURANT_FEATURE } from '@feedmepos/core/entity'
184
178
  import { FdoGrabfoodSettings, FdoShopeeFoodSettings } from '@entity'
185
179
  import deliveryData from './delivery.data'
186
180
  import { useDelivery, type DeliveryCompany, type LinkedDeliveryDoc } from './delivery'
@@ -203,7 +197,6 @@ import { useSnackbarFunctions } from '@/components/snackbar'
203
197
  import useSearch from '@/composables/search'
204
198
  import DeliveryList from './DeliveryList.vue'
205
199
  import DeliverooSetting from './integrated-delivery/DeliverooSetting.vue'
206
- import { Pos } from '@feedmepos/core'
207
200
  import { useI18n, useCoreStore } from '@feedmepos/mf-common'
208
201
 
209
202
  const { t } = useI18n()
@@ -530,7 +523,7 @@ const localDeliveryCompanies = computed<DeliveryRow[]>(() => {
530
523
  key,
531
524
  name,
532
525
  paymentType: getPaymentType(payment),
533
- status: !!doc ? [`${t('order.active')}`] : [`${t('order.inactive')}`],
526
+ status: doc ? [`${t('order.active')}`] : [`${t('order.inactive')}`],
534
527
  doc: company,
535
528
  catalog: getCatalog(doc?.catalogId || null)
536
529
  }
@@ -788,11 +781,11 @@ async function updateManualDelivery({
788
781
  company: DeliveryCompany
789
782
  data: FdoLinkedDelivery | null
790
783
  }) {
791
- if (!!data) {
784
+ if (data) {
792
785
  const resp = await createOrUpdateManualDeliveryDoc({ doc, company, data })
793
786
 
794
787
  if (resp) updateCached(resp)
795
- } else if (!!doc) {
788
+ } else if (doc) {
796
789
  await remoteOrderApi.deleteDeliveryCompany(doc)
797
790
  deleteCached(doc)
798
791
  }
@@ -807,7 +800,7 @@ async function createOrUpdateManualDeliveryDoc({
807
800
  company: DeliveryCompany
808
801
  data: FdoLinkedDelivery
809
802
  }): Promise<LinkedDeliveryDoc | undefined> {
810
- const { paymentTypeKey, catalogId, rounding, useCustomOrderNumber } = data
803
+ const { paymentTypeKey, catalogId, rounding, useCustomOrderNumber, requiredRemark } = data
811
804
  let newDoc: LinkedDeliveryDoc
812
805
 
813
806
  if (doc) {
@@ -816,7 +809,8 @@ async function createOrUpdateManualDeliveryDoc({
816
809
  paymentTypeKey,
817
810
  catalogId,
818
811
  rounding,
819
- useCustomOrderNumber
812
+ useCustomOrderNumber,
813
+ requiredRemark
820
814
  })
821
815
  } else {
822
816
  newDoc = await remoteOrderApi.createDeliveryCompany({
@@ -824,7 +818,8 @@ async function createOrUpdateManualDeliveryDoc({
824
818
  paymentTypeKey,
825
819
  catalogId,
826
820
  rounding,
827
- useCustomOrderNumber
821
+ useCustomOrderNumber,
822
+ requiredRemark
828
823
  })
829
824
  }
830
825
 
@@ -875,7 +870,7 @@ async function updateFeedmeExpressSetting() {
875
870
  currentRestaurant.value?._id ?? '',
876
871
  feedMeDoc.value
877
872
  )
878
- if (!!currentRestaurant.value?.feedmeDelivery) {
873
+ if (currentRestaurant.value?.feedmeDelivery) {
879
874
  currentRestaurant.value.feedmeDelivery = restaurant.feedmeDelivery
880
875
  }
881
876
  })
@@ -886,7 +881,7 @@ async function updateInHouseSetting() {
886
881
  sideSheetIntegrated.value = false
887
882
  await restaurantStore.updateInhouseDelivery(currentRestaurant.value?._id ?? '', inHouseDoc.value)
888
883
  const res = (await readRestaurants())?.find((res) => res._id === currentRestaurant.value?._id)
889
- if (!!res) {
884
+ if (res) {
890
885
  await changeRestaurant(res)
891
886
  }
892
887
  showSuccess(t('order.DeliverySettingUpdated'))
@@ -899,7 +894,7 @@ async function updateExternalDeliverySetting() {
899
894
  externalDoc.value
900
895
  )
901
896
  const res = (await readRestaurants())?.find((res) => res._id === currentRestaurant.value?._id)
902
- if (!!res) {
897
+ if (res) {
903
898
  await changeRestaurant(res)
904
899
  }
905
900
  showSuccess(t('order.DeliverySettingUpdated'))
@@ -36,13 +36,15 @@ const data = ref<LocalDeliverySettingData>(
36
36
  active: !!props.modelValue,
37
37
  catalogId: null,
38
38
  rounding: props.modelValue.rounding ?? true,
39
+ requiredRemark: props.modelValue.requiredRemark ?? false,
39
40
  ...props.modelValue
40
41
  }
41
42
  : {
42
43
  ...props.company,
43
44
  catalogId: null,
44
45
  active: false,
45
- rounding: true
46
+ rounding: true,
47
+ requiredRemark: false
46
48
  }
47
49
  )
48
50
 
@@ -54,6 +56,7 @@ watch(
54
56
  active: !!newVal,
55
57
  catalogId: null,
56
58
  rounding: newVal.rounding ?? true,
59
+ requiredRemark: newVal.requiredRemark ?? false,
57
60
  ...newVal
58
61
  }
59
62
  } else {
@@ -61,7 +64,8 @@ watch(
61
64
  ...props.company,
62
65
  catalogId: null,
63
66
  active: false,
64
- rounding: true
67
+ rounding: true,
68
+ requiredRemark: false
65
69
  }
66
70
  }
67
71
  }
@@ -120,6 +124,13 @@ function updateCatalog(catalogId: string | null) {
120
124
  catalogId
121
125
  }))
122
126
  }
127
+
128
+ function updateRequiredRemark(requiredRemark: boolean) {
129
+ emitChange((oldV) => ({
130
+ ...oldV,
131
+ requiredRemark
132
+ }))
133
+ }
123
134
  </script>
124
135
 
125
136
  <template>
@@ -170,6 +181,14 @@ function updateCatalog(catalogId: string | null) {
170
181
  @update:model-value="updateCustomOrderNumber"
171
182
  />
172
183
  </div>
184
+ <div>
185
+ <FmCheckbox
186
+ :model-value="data.requiredRemark ?? false"
187
+ value=""
188
+ :label="t('order.requiredRemark')"
189
+ @update:model-value="updateRequiredRemark"
190
+ />
191
+ </div>
173
192
  </FmCard>
174
193
  </div>
175
194
  </template>
@@ -1,4 +1,4 @@
1
- import { F_PAYMENT_NAME, FdoLinkedDelivery, F_COUNTRY} from "@feedmepos/core/entity";
1
+ import { F_PAYMENT_NAME, FdoLinkedDelivery, F_COUNTRY } from "@feedmepos/core/entity";
2
2
 
3
3
  export type LinkedDeliveryDoc = FdoLinkedDelivery & { _rev: string };
4
4
 
@@ -42,10 +42,11 @@ export function useDelivery() {
42
42
  function isIntegratedPlatformSupported(platform: AUTO_INTEGRATION_CLIENT, country?: F_COUNTRY | null): boolean {
43
43
  country = country || F_COUNTRY.enum.MY
44
44
  const mySupported = [AUTO_INTEGRATION_CLIENT.foodpanda, AUTO_INTEGRATION_CLIENT.grabfood, AUTO_INTEGRATION_CLIENT.shopeefood, AUTO_INTEGRATION_CLIENT.external];
45
- const sgSupported = [AUTO_INTEGRATION_CLIENT.foodpanda, AUTO_INTEGRATION_CLIENT.grabfood, AUTO_INTEGRATION_CLIENT.deliveroo];
46
- const thSupported = [AUTO_INTEGRATION_CLIENT.grabfood, AUTO_INTEGRATION_CLIENT.external ];
45
+ const sgSupported = [AUTO_INTEGRATION_CLIENT.foodpanda, AUTO_INTEGRATION_CLIENT.grabfood, AUTO_INTEGRATION_CLIENT.deliveroo];
46
+ const thSupported = [AUTO_INTEGRATION_CLIENT.grabfood, AUTO_INTEGRATION_CLIENT.external];
47
+ const pkSupported = [AUTO_INTEGRATION_CLIENT.foodpanda, AUTO_INTEGRATION_CLIENT.external];
47
48
 
48
- let supportedPlatforms:AUTO_INTEGRATION_CLIENT[] = [];
49
+ let supportedPlatforms: AUTO_INTEGRATION_CLIENT[] = [];
49
50
  switch (country) {
50
51
  case F_COUNTRY.enum.MY:
51
52
  supportedPlatforms = mySupported
@@ -55,7 +56,10 @@ export function useDelivery() {
55
56
  break;
56
57
  case F_COUNTRY.enum.TH:
57
58
  supportedPlatforms = thSupported
58
- break;
59
+ break;
60
+ case F_COUNTRY.enum.PK:
61
+ supportedPlatforms = pkSupported
62
+ break;
59
63
  default:
60
64
  break;
61
65
  }
@@ -5,7 +5,6 @@
5
5
  :label="t('order.activateIntegration', { integrationType: t('order.auto') })"
6
6
  label-placement="right"
7
7
  @update:model-value="updateEnable"
8
- :disabled="!canEdit"
9
8
  />
10
9
  <div class="mt-6">
11
10
  <div>
@@ -13,7 +12,6 @@
13
12
  :model-value="data.config.autoCloseBill"
14
13
  :label="t('order.allowedAutoCloseBill')"
15
14
  @update:model-value="updateAutoCloseBill"
16
- :disabled="!canEdit"
17
15
  value=""
18
16
  />
19
17
  </div>
@@ -23,7 +21,6 @@
23
21
  :label="t('order.printReceiptAfterClose')"
24
22
  @update:model-value="updatePrintReceiptAfterClose"
25
23
  value=""
26
- :disabled="!canEdit"
27
24
  />
28
25
  </div>
29
26
  </div>
@@ -37,7 +34,6 @@
37
34
  :label="t('order.platform')"
38
35
  :items="platformOptions"
39
36
  @update:model-value="updatePlatform"
40
- :disabled="!canEdit"
41
37
  />
42
38
 
43
39
  <FmSelect
@@ -47,7 +43,6 @@
47
43
  :label="t('order.deliveryCatalog')"
48
44
  :items="menuStore.catalogOptions"
49
45
  @update:model-value="updateDeliveryMenuCatalog"
50
- :disabled="!canEdit"
51
46
  />
52
47
 
53
48
  <FmSelect
@@ -57,17 +52,11 @@
57
52
  :label="t('order.pickupCatalog')"
58
53
  :items="menuStore.catalogOptions"
59
54
  @update:model-value="updatePickupMenuCatalog"
60
- :disabled="!canEdit"
61
55
  />
62
56
  </div>
63
57
 
64
58
  <div class="flex flex-row mt-5">
65
- <FmButton
66
- variant="primary"
67
- :label="t('order.syncMenu')"
68
- @click="syncMenu()"
69
- :disabled="!canEdit"
70
- />
59
+ <FmButton variant="primary" :label="t('order.syncMenu')" @click="syncMenu()" />
71
60
  </div>
72
61
  </FmCard>
73
62
  </div>
@@ -75,9 +64,9 @@
75
64
  </template>
76
65
 
77
66
  <script setup lang="ts">
78
- import { type PropType, computed, reactive, ref, watch } from 'vue'
67
+ import { type PropType, reactive, ref } from 'vue'
79
68
  import { F_ORDER_PLATFORM, type FdoExternalSetting } from '@entity'
80
- import { useI18n, useCoreStore } from '@feedmepos/mf-common'
69
+ import { useI18n } from '@feedmepos/mf-common'
81
70
  import { clone } from '@/helpers/object'
82
71
  import { useMenuStore } from '@/stores/menu/menu'
83
72
  import { useLoading } from '@/composables/loading'
@@ -87,9 +76,6 @@ import { useSnackbarFunctions } from '@/components/snackbar'
87
76
  const { showSuccess } = useSnackbarFunctions()
88
77
  const { t } = useI18n()
89
78
  const menuStore = useMenuStore()
90
- const CoreStore = useCoreStore()
91
-
92
- const canEdit = computed(() => CoreStore.sessionUser.value?.role.isAdmin ?? false)
93
79
 
94
80
  const props = defineProps({
95
81
  initialValue: {