ts-glitter 21.5.9 → 21.6.0
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/lib/glitterBundle/html-component/editor.ts +5 -5
- package/lib/glitterBundle/html-component/widget.ts +1 -1
- package/lib/glitterBundle/plugins/add_item_dia.ts +3 -3
- package/lib/glitterBundle/plugins/dialog-style-editor.ts +4 -4
- package/lib/glitterBundle/plugins/editor-elem.ts +8 -8
- package/lib/glitterBundle/plugins/editor.ts +3 -3
- package/lowcode/Entry.js +1 -1
- package/lowcode/Entry.ts +1 -1
- package/lowcode/backend-manager/bg-customer-message.js +4 -4
- package/lowcode/backend-manager/bg-customer-message.ts +4 -4
- package/lowcode/backend-manager/bg-global-event.js +1 -1
- package/lowcode/backend-manager/bg-global-event.ts +1 -1
- package/lowcode/backend-manager/bg-guide.js +21 -21
- package/lowcode/backend-manager/bg-guide.ts +22 -22
- package/lowcode/backend-manager/bg-mobile-guide.js +4 -4
- package/lowcode/backend-manager/bg-mobile-guide.ts +4 -4
- package/lowcode/backend-manager/bg-seo.js +1 -1
- package/lowcode/backend-manager/bg-seo.ts +1 -1
- package/lowcode/backend-manager/bg-shopping.js +6 -6
- package/lowcode/backend-manager/bg-shopping.ts +6 -6
- package/lowcode/backend-manager/bg-wallet.js +3 -3
- package/lowcode/backend-manager/bg-wallet.ts +3 -3
- package/lowcode/backend-manager/bg-widget.js +6 -0
- package/lowcode/backend-manager/bg-widget.ts +7 -0
- package/lowcode/cms-plugin/POS-setting.js +1 -1
- package/lowcode/cms-plugin/POS-setting.ts +1 -1
- package/lowcode/cms-plugin/ai-generator/member-ai.js +2 -2
- package/lowcode/cms-plugin/ai-generator/member-ai.ts +2 -2
- package/lowcode/cms-plugin/ai-generator/product-ai.js +2 -2
- package/lowcode/cms-plugin/ai-generator/product-ai.ts +2 -2
- package/lowcode/cms-plugin/ai-message.js +2 -2
- package/lowcode/cms-plugin/ai-message.ts +2 -2
- package/lowcode/cms-plugin/ai-points-list.js +2 -2
- package/lowcode/cms-plugin/ai-points-list.ts +2 -2
- package/lowcode/cms-plugin/app-design.js +3 -3
- package/lowcode/cms-plugin/app-design.ts +3 -3
- package/lowcode/cms-plugin/app-release.js +2 -2
- package/lowcode/cms-plugin/app-release.ts +2 -2
- package/lowcode/cms-plugin/customer-message-user.js +5 -5
- package/lowcode/cms-plugin/customer-message-user.ts +5 -5
- package/lowcode/cms-plugin/data-analyze-module.js +3 -3
- package/lowcode/cms-plugin/data-analyze-module.ts +3 -3
- package/lowcode/cms-plugin/domain-setting.js +2 -2
- package/lowcode/cms-plugin/domain-setting.ts +2 -2
- package/lowcode/cms-plugin/live_capture.js +17 -17
- package/lowcode/cms-plugin/live_capture.ts +17 -17
- package/lowcode/cms-plugin/member-type-list.js +4 -4
- package/lowcode/cms-plugin/member-type-list.ts +4 -4
- package/lowcode/cms-plugin/module/form-module.js +1 -1
- package/lowcode/cms-plugin/module/form-module.ts +1 -1
- package/lowcode/cms-plugin/permission-setting.js +5 -5
- package/lowcode/cms-plugin/permission-setting.ts +5 -5
- package/lowcode/cms-plugin/pos-basic-setting.js +1 -1
- package/lowcode/cms-plugin/pos-basic-setting.ts +2 -2
- package/lowcode/cms-plugin/pos-checkout-setting.js +3 -3
- package/lowcode/cms-plugin/pos-checkout-setting.ts +4 -4
- package/lowcode/cms-plugin/pos-pages/payment-page.js +449 -232
- package/lowcode/cms-plugin/pos-pages/payment-page.ts +501 -278
- package/lowcode/cms-plugin/pos-pages/pos-function.js +3 -2
- package/lowcode/cms-plugin/pos-pages/pos-function.ts +4 -3
- package/lowcode/cms-plugin/pos-pages/pos-home-page.js +9 -9
- package/lowcode/cms-plugin/pos-pages/pos-home-page.ts +9 -9
- package/lowcode/cms-plugin/pos-pages/pos-summary.js +2 -2
- package/lowcode/cms-plugin/pos-pages/pos-summary.ts +2 -2
- package/lowcode/cms-plugin/pos-pages/products-page.js +6 -180
- package/lowcode/cms-plugin/pos-pages/products-page.ts +6 -185
- package/lowcode/cms-plugin/product-service.js +4 -4
- package/lowcode/cms-plugin/product-service.ts +4 -5
- package/lowcode/cms-plugin/reconciliation-area.js +24 -24
- package/lowcode/cms-plugin/reconciliation-area.ts +24 -24
- package/lowcode/cms-plugin/seo-blog.js +2 -2
- package/lowcode/cms-plugin/seo-blog.ts +2 -2
- package/lowcode/cms-plugin/seo-setting-v2.js +5 -5
- package/lowcode/cms-plugin/seo-setting-v2.ts +5 -5
- package/lowcode/cms-plugin/shopping-allowance-manager.js +4 -4
- package/lowcode/cms-plugin/shopping-allowance-manager.ts +4 -4
- package/lowcode/cms-plugin/shopping-collections.js +6 -6
- package/lowcode/cms-plugin/shopping-collections.ts +6 -6
- package/lowcode/cms-plugin/shopping-invoice-manager.js +11 -11
- package/lowcode/cms-plugin/shopping-invoice-manager.ts +11 -11
- package/lowcode/cms-plugin/shopping-order-manager.js +21 -13
- package/lowcode/cms-plugin/shopping-order-manager.ts +21 -13
- package/lowcode/cms-plugin/shopping-product-setting.js +1 -1
- package/lowcode/cms-plugin/shopping-product-setting.ts +1 -1
- package/lowcode/cms-plugin/shopping-product-text.js +5 -5
- package/lowcode/cms-plugin/shopping-product-text.ts +5 -5
- package/lowcode/cms-plugin/shopping-setting-basic.js +5 -6
- package/lowcode/cms-plugin/shopping-setting-basic.ts +5 -6
- package/lowcode/cms-plugin/shopping-shipment-setting.js +2 -2
- package/lowcode/cms-plugin/shopping-shipment-setting.ts +2 -2
- package/lowcode/cms-plugin/stock-history.js +7 -7
- package/lowcode/cms-plugin/stock-history.ts +7 -7
- package/lowcode/cms-plugin/stock-stores.js +2 -2
- package/lowcode/cms-plugin/stock-stores.ts +2 -2
- package/lowcode/cms-plugin/stock-vendors.js +2 -2
- package/lowcode/cms-plugin/stock-vendors.ts +2 -2
- package/lowcode/cms-plugin/third-party-google.js +1 -1
- package/lowcode/cms-plugin/third-party-google.ts +1 -1
- package/lowcode/cms-plugin/user-list.js +6 -2
- package/lowcode/cms-plugin/user-list.ts +7 -2
- package/lowcode/cms-plugin/user-login-setting.js +1 -1
- package/lowcode/cms-plugin/user-login-setting.ts +1 -1
- package/lowcode/cms-plugin/wallet-list.js +3 -3
- package/lowcode/cms-plugin/wallet-list.ts +3 -3
- package/lowcode/dialog/addTemplate.js +9 -9
- package/lowcode/dialog/addTemplate.ts +9 -9
- package/lowcode/dialog/dialog.js +1 -1
- package/lowcode/dialog/dialog.ts +1 -1
- package/lowcode/dialog/dialog_setting.js +1 -1
- package/lowcode/dialog/dialog_setting.ts +1 -1
- package/lowcode/dialog/image-preview.js +2 -2
- package/lowcode/dialog/image-preview.ts +2 -2
- package/lowcode/editor/add-component.js +4 -4
- package/lowcode/editor/add-component.ts +9 -9
- package/lowcode/editor/add-page.js +1 -1
- package/lowcode/editor/add-page.ts +1 -1
- package/lowcode/editor/page-code-setting.js +1 -1
- package/lowcode/editor/page-code-setting.ts +1 -1
- package/lowcode/editor/page-editor.js +15 -15
- package/lowcode/editor/page-editor.ts +15 -15
- package/lowcode/editor/page-setting-view.js +6 -6
- package/lowcode/editor/page-setting-view.ts +6 -6
- package/lowcode/editor/preview-app.js +1 -1
- package/lowcode/editor/preview-app.ts +1 -1
- package/lowcode/editor/search-idea.js +2 -2
- package/lowcode/editor/search-idea.ts +2 -2
- package/lowcode/editor/set-global-value.js +9 -9
- package/lowcode/editor/set-global-value.ts +9 -9
- package/lowcode/editor-bridge/trigger-event.js +1 -1
- package/lowcode/editor-bridge/trigger-event.ts +1 -1
- package/lowcode/editor-components/global-widget/global-widget.js +1 -1
- package/lowcode/editor-components/global-widget/global-widget.ts +1 -1
- package/lowcode/editor-config.js +1 -1
- package/lowcode/editor-config.ts +1 -1
- package/lowcode/form-view/e-commerce/path-select.js +1 -1
- package/lowcode/form-view/e-commerce/path-select.ts +1 -1
- package/lowcode/form-view/e-commerce/product-select.js +1 -1
- package/lowcode/form-view/e-commerce/product-select.ts +1 -1
- package/lowcode/form-view/editor/color-theme-selector.js +2 -2
- package/lowcode/form-view/editor/color-theme-selector.ts +2 -2
- package/lowcode/form-view/editor/image-selector.js +5 -5
- package/lowcode/form-view/editor/image-selector.ts +5 -5
- package/lowcode/glitterBundle/html-component/custom-style.js +6 -6
- package/lowcode/glitterBundle/html-component/custom-style.ts +6 -6
- package/lowcode/glitterBundle/html-component/global-widget.js +2 -2
- package/lowcode/glitterBundle/html-component/global-widget.ts +2 -2
- package/lowcode/glitterBundle/html-component/widget.js +1 -1
- package/lowcode/glitterBundle/html-component/widget.ts +1 -1
- package/lowcode/glitterBundle/module/html-generate.js +2 -2
- package/lowcode/glitterBundle/module/html-generate.ts +2 -2
- package/lowcode/glitterBundle/plugins/add_item_dia.js +7 -7
- package/lowcode/glitterBundle/plugins/add_item_dia.ts +7 -7
- package/lowcode/glitterBundle/plugins/editor.js +3 -3
- package/lowcode/glitterBundle/plugins/editor.ts +3 -3
- package/lowcode/glitterBundle/plugins/style-editor.js +5 -5
- package/lowcode/glitterBundle/plugins/style-editor.ts +5 -5
- package/lowcode/jspage/editor.js +3 -3
- package/lowcode/jspage/editor.ts +3 -3
- package/lowcode/jspage/function-page/main_editor.js +6 -6
- package/lowcode/jspage/function-page/main_editor.ts +6 -6
- package/lowcode/jspage/function-page/page_editor.js +4 -4
- package/lowcode/jspage/function-page/page_editor.ts +4 -4
- package/lowcode/jspage/function-page/server-editor/router/domain-manager.js +3 -3
- package/lowcode/jspage/function-page/server-editor/router/domain-manager.ts +3 -3
- package/lowcode/jspage/function-page/tool-setting.js +2 -2
- package/lowcode/jspage/function-page/tool-setting.ts +2 -2
- package/lowcode/landing-page/about-us.js +5 -5
- package/lowcode/landing-page/about-us.ts +5 -5
- package/lowcode/modules/file-system.js +2 -2
- package/lowcode/modules/file-system.ts +2 -2
- package/lowcode/modules/image-library-clone.js +4 -4
- package/lowcode/modules/image-library-clone.ts +4 -4
- package/lowcode/modules/image-library.js +2 -2
- package/lowcode/modules/image-library.ts +2 -2
- package/lowcode/official_view_component/official/component.js +1 -1
- package/lowcode/official_view_component/official/component.ts +1 -1
- package/lowcode/official_view_component/official/widget.js +1 -1
- package/lowcode/official_view_component/official/widget.ts +1 -1
- package/lowcode/public-components/banner/first-banner.js +1 -1
- package/lowcode/public-components/banner/first-banner.ts +1 -1
- package/lowcode/public-components/blogs/list.js +1 -1
- package/lowcode/public-components/blogs/list.ts +1 -1
- package/lowcode/public-components/headers/sy-02.js +4 -4
- package/lowcode/public-components/headers/sy-02.ts +4 -4
- package/lowcode/public-components/headers/sy-03.js +1 -1
- package/lowcode/public-components/headers/sy-03.ts +1 -1
- package/lowcode/public-components/headers/sy-04.js +2 -2
- package/lowcode/public-components/headers/sy-04.ts +2 -2
- package/lowcode/public-components/headers/sy-05.js +1 -1
- package/lowcode/public-components/headers/sy-05.ts +1 -1
- package/lowcode/public-components/user-manager/um-order.js +2 -2
- package/lowcode/public-components/user-manager/um-order.ts +2 -2
- package/lowcode/setting/appSetting.js +4 -4
- package/lowcode/setting/appSetting.ts +4 -4
- package/lowcode/setting/initialStyle.js +2 -2
- package/lowcode/setting/initialStyle.ts +2 -2
- package/lowcode/setting/pageManager.js +6 -6
- package/lowcode/setting/pageManager.ts +6 -6
- package/lowcode/view-model/saas-view-model.js +2 -2
- package/lowcode/view-model/saas-view-model.ts +2 -2
- package/package.json +1 -1
|
@@ -20,6 +20,7 @@ import { PaymentFunction } from './payment-function.js';
|
|
|
20
20
|
import { UmClass } from '../../public-components/user-manager/um-class.js';
|
|
21
21
|
import { FormCheck } from '../module/form-check.js';
|
|
22
22
|
import { ShipmentConfig } from '../../glitter-base/global/shipment-config.js';
|
|
23
|
+
import { Tool } from '../../modules/tool.js';
|
|
23
24
|
|
|
24
25
|
const html = String.raw;
|
|
25
26
|
|
|
@@ -60,16 +61,6 @@ export class PaymentPage {
|
|
|
60
61
|
return { title: item.title, value: item.value };
|
|
61
62
|
});
|
|
62
63
|
|
|
63
|
-
// 可用的運送選項(原)
|
|
64
|
-
// const availableOptions = [
|
|
65
|
-
// { title: '一般宅配', value: 'normal' },
|
|
66
|
-
// { title: '全家店到店', value: 'FAMIC2C' },
|
|
67
|
-
// { title: '萊爾富店到店', value: 'HILIFEC2C' },
|
|
68
|
-
// { title: 'OK超商店到店', value: 'OKMARTC2C' },
|
|
69
|
-
// { title: '7-ELEVEN超商交貨便', value: 'UNIMARTC2C' },
|
|
70
|
-
// { title: '門市取貨', value: 'shop' },
|
|
71
|
-
// ].filter(option => orderDetail.shipment_support.includes(option.value));
|
|
72
|
-
|
|
73
64
|
// 合併預設選項和可用運送選項
|
|
74
65
|
return defaultOptions.concat(availableOptions);
|
|
75
66
|
}
|
|
@@ -84,6 +75,7 @@ export class PaymentPage {
|
|
|
84
75
|
const vm = obj.vm;
|
|
85
76
|
const dialog = new ShareDialog(gvc.glitter);
|
|
86
77
|
PaymentPage.storeHistory(obj.ogOrderData);
|
|
78
|
+
PaymentPage.addStyle(gvc);
|
|
87
79
|
|
|
88
80
|
// 確保初始化包含預設值
|
|
89
81
|
obj.ogOrderData.pos_info = obj.ogOrderData.pos_info || {
|
|
@@ -117,8 +109,8 @@ export class PaymentPage {
|
|
|
117
109
|
return {
|
|
118
110
|
bind: id,
|
|
119
111
|
view: () => {
|
|
120
|
-
return new Promise(async
|
|
121
|
-
|
|
112
|
+
return new Promise(async resolve => {
|
|
113
|
+
// 後端返回的訂單資料預覽
|
|
122
114
|
const orderDetail = await (async () => {
|
|
123
115
|
dialog.dataLoading({ visible: true });
|
|
124
116
|
const userInfo = obj.ogOrderData.user_info || {};
|
|
@@ -153,7 +145,7 @@ export class PaymentPage {
|
|
|
153
145
|
) {
|
|
154
146
|
(obj.ogOrderData.user_info.shipment as any) = 'now';
|
|
155
147
|
}
|
|
156
|
-
|
|
148
|
+
// 儲存資料至本地暫存
|
|
157
149
|
obj.ogOrderData.lineItems = obj.ogOrderData.lineItems.filter(dd => {
|
|
158
150
|
return orderDetail.lineItems.find((d1: any) => {
|
|
159
151
|
return dd.id + dd.spec.join('-') === d1.id + d1.spec.join('-');
|
|
@@ -183,9 +175,9 @@ export class PaymentPage {
|
|
|
183
175
|
>
|
|
184
176
|
${PosWidget.bigTitle('訂單明細')}
|
|
185
177
|
<div
|
|
186
|
-
class="d-flex flex-column ${document.body.offsetWidth < 800 ?
|
|
178
|
+
class="d-flex flex-column ${document.body.offsetWidth < 800 ? '' : ''}"
|
|
187
179
|
style="${document.body.offsetWidth < 800
|
|
188
|
-
?
|
|
180
|
+
? ''
|
|
189
181
|
: `padding:24px;border-radius: 10px;background: #FFF;box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.08);margin-top:32px;`}"
|
|
190
182
|
>
|
|
191
183
|
<div
|
|
@@ -198,112 +190,134 @@ export class PaymentPage {
|
|
|
198
190
|
<div class="col-2 text-center">數量${hasWeighing ? ' / 重量' : ''}</div>
|
|
199
191
|
<div class="col-2 text-center">小計</div>
|
|
200
192
|
</div>
|
|
201
|
-
<div class="d-flex flex-column" style="${document.body.offsetWidth < 800 ?
|
|
193
|
+
<div class="d-flex flex-column" style="${document.body.offsetWidth < 800 ? '' : ''}">
|
|
202
194
|
${(() => {
|
|
203
|
-
if (orderDetail.lineItems.length
|
|
204
|
-
return
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
195
|
+
if (orderDetail.lineItems.length === 0) {
|
|
196
|
+
return '';
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
const ogOrderMap = new Map(
|
|
200
|
+
obj.ogOrderData.lineItems.map((ogItem, index) => {
|
|
201
|
+
return [`${ogItem.id}-${ogItem.spec.join('/')}`, index];
|
|
202
|
+
})
|
|
203
|
+
);
|
|
204
|
+
|
|
205
|
+
const lineItemCountMap = new Map(
|
|
206
|
+
orderDetail.lineItems.map((item: any) => {
|
|
207
|
+
return [`${item.id}-${item.spec.join('/')}`, item.count];
|
|
208
|
+
})
|
|
209
|
+
);
|
|
210
|
+
|
|
211
|
+
const resetSalePriceIcon = (data: any, index: number) => {
|
|
212
|
+
return html`<i
|
|
213
|
+
class="fa-solid fa-pencil cursor_pointer"
|
|
214
|
+
onclick="${gvc.event(() => {
|
|
215
|
+
const def = obj.ogOrderData.lineItems?.[index]?.custom_price || 0;
|
|
216
|
+
|
|
217
|
+
PosFunction.setMoney(
|
|
218
|
+
gvc,
|
|
219
|
+
def,
|
|
220
|
+
money => {
|
|
221
|
+
if (money === data.sale_price) {
|
|
222
|
+
delete obj.ogOrderData.lineItems[index].custom_price;
|
|
223
|
+
} else {
|
|
224
|
+
obj.ogOrderData.lineItems[index].custom_price = money;
|
|
225
|
+
}
|
|
226
|
+
refreshOrderView();
|
|
227
|
+
},
|
|
228
|
+
'更改商品單價'
|
|
229
|
+
);
|
|
230
|
+
})}"
|
|
231
|
+
></i>`;
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
return [...ogOrderMap.keys()]
|
|
235
|
+
.filter(key => {
|
|
236
|
+
return lineItemCountMap.get(key);
|
|
237
|
+
})
|
|
238
|
+
.map(key => {
|
|
239
|
+
const lineItemKeys = [...lineItemCountMap.keys()].findIndex(k => k === key);
|
|
240
|
+
const index = ogOrderMap.get(key);
|
|
241
|
+
const data = orderDetail.lineItems[lineItemKeys];
|
|
242
|
+
|
|
243
|
+
if (index === undefined) {
|
|
244
|
+
console.error(`ogOrderData LineItems 不存在商品規格 ${key}`);
|
|
245
|
+
return '';
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
return html`
|
|
249
|
+
<div class="d-flex">
|
|
250
|
+
<div class="col-12 col-sm-6 d-flex align-items-center">
|
|
251
|
+
<div
|
|
252
|
+
class="d-flex flex-column align-items-center justify-content-center"
|
|
253
|
+
style="gap:5px;width:75px;"
|
|
254
|
+
>
|
|
255
|
+
<div style="height: 20px;"></div>
|
|
256
|
+
<div
|
|
257
|
+
style="width: 70px;height: 70px; min-width: 70px;min-height: 70px; border-radius: 5px;background: 50%/cover url('${data.preview_image ||
|
|
258
|
+
'https://d3jnmi1tfjgtti.cloudfront.net/file/234285319/1722936949034-default_image.jpg'}')"
|
|
259
|
+
></div>
|
|
209
260
|
<div
|
|
210
|
-
|
|
211
|
-
|
|
261
|
+
style="font-size: 13px;height: 20px;"
|
|
262
|
+
class="fw-500 ${data.pre_order ? `text-danger` : ''}"
|
|
212
263
|
>
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
>
|
|
222
|
-
庫存:${(() => {
|
|
223
|
-
if (`${data.show_understocking}` === 'false') {
|
|
224
|
-
return `不追蹤`;
|
|
225
|
-
} else {
|
|
226
|
-
return (
|
|
227
|
-
(data.stockList[POSSetting.config.where_store] &&
|
|
228
|
-
data.stockList[POSSetting.config.where_store].count) ||
|
|
229
|
-
0
|
|
230
|
-
);
|
|
231
|
-
}
|
|
232
|
-
})()}
|
|
233
|
-
</div>
|
|
264
|
+
${(() => {
|
|
265
|
+
if (`${data.show_understocking}` === 'false') {
|
|
266
|
+
return '不追蹤庫存';
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
const stock = data.stockList[POSSetting.config.where_store];
|
|
270
|
+
return `庫存: ${stock?.count || 0}`;
|
|
271
|
+
})()}
|
|
234
272
|
</div>
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
);
|
|
249
|
-
})}"
|
|
250
|
-
style="font-size: 16px;font-style: normal;font-weight: 500;letter-spacing: 0.64px;margin-left: 12px;"
|
|
273
|
+
</div>
|
|
274
|
+
<div
|
|
275
|
+
class="d-flex flex-column mt-3 gap-1"
|
|
276
|
+
style="font-size: 16px;font-style: normal;font-weight: 500;letter-spacing: 0.64px;margin-left: 12px;"
|
|
277
|
+
>
|
|
278
|
+
${data.pre_order
|
|
279
|
+
? html`<div>${BgWidget.warningInsignia('需預購', { size: 'sm' })}</div>`
|
|
280
|
+
: ''}
|
|
281
|
+
<div class="d-flex justify-content-start align-items-center gap-2">
|
|
282
|
+
${data.title}
|
|
283
|
+
</div>
|
|
284
|
+
<span
|
|
285
|
+
style="color: #949494; font-size: 16px; font-style: normal; font-weight: 500; letter-spacing: 0.64px; text-transform: uppercase;"
|
|
251
286
|
>
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
287
|
+
${data.spec.length > 0 ? data.spec.map((spec: any) => `${spec}`).join(',') : ''}
|
|
288
|
+
</span>
|
|
289
|
+
${document.body.clientWidth < 800
|
|
290
|
+
? html` <div
|
|
291
|
+
style="color: #393939; font-size: 16px; font-style: normal; font-weight: 400; letter-spacing: 0.64px; text-transform: uppercase;"
|
|
292
|
+
>
|
|
293
|
+
${resetSalePriceIcon(data, index)}
|
|
294
|
+
NT.${parseInt(data.sale_price as any, 10).toLocaleString()}
|
|
295
|
+
${document.body.clientWidth < 800 ? `x` : ''} ${data.count}
|
|
296
|
+
</div>`
|
|
297
|
+
: ''}
|
|
298
|
+
</div>
|
|
299
|
+
<div class="flex-fill"></div>
|
|
300
|
+
<div
|
|
301
|
+
class="d-sm-none d-flex flex-column align-items-end justify-content-between h-100"
|
|
302
|
+
style="padding: 16px 0px 4px;"
|
|
303
|
+
>
|
|
304
|
+
<div>
|
|
305
|
+
<i
|
|
306
|
+
class="fa-sharp fa-regular fa-xmark fs-4"
|
|
307
|
+
onclick="${gvc.event(() => {
|
|
308
|
+
function callMinus(index: number) {
|
|
309
|
+
obj.ogOrderData.lineItems[index].count = 0;
|
|
310
|
+
refreshOrderView();
|
|
258
311
|
}
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
return data.spec.length > 0
|
|
267
|
-
? data.spec
|
|
268
|
-
.map((spec: any) => {
|
|
269
|
-
return html` ${spec}`;
|
|
270
|
-
})
|
|
271
|
-
.join(',')
|
|
272
|
-
: html``;
|
|
273
|
-
})()}
|
|
274
|
-
</span>
|
|
275
|
-
|
|
276
|
-
${document.body.clientWidth < 800
|
|
277
|
-
? html` <div
|
|
278
|
-
style="color: #393939; font-size: 16px; font-style: normal; font-weight: 400; line-height: normal; letter-spacing: 0.64px; text-transform: uppercase;"
|
|
279
|
-
>
|
|
280
|
-
NT.${parseInt(data.sale_price as any, 10).toLocaleString()}
|
|
281
|
-
${document.body.clientWidth < 800 ? `x` : ``} ${data.count}
|
|
282
|
-
</div>`
|
|
283
|
-
: ``}
|
|
312
|
+
|
|
313
|
+
dialog.checkYesOrNot({
|
|
314
|
+
text: '確定要移除此商品嗎?',
|
|
315
|
+
callback: bool => bool && callMinus(index),
|
|
316
|
+
});
|
|
317
|
+
})}"
|
|
318
|
+
></i>
|
|
284
319
|
</div>
|
|
285
|
-
<div class="flex-
|
|
286
|
-
<div
|
|
287
|
-
class="d-sm-none d-flex align-items-center justify-content-center flex-column"
|
|
288
|
-
style="gap:0px;"
|
|
289
|
-
onclick="${gvc.event(() => {
|
|
290
|
-
const n = obj.ogOrderData.lineItems?.[index]?.custom_price || 0;
|
|
291
|
-
|
|
292
|
-
PosFunction.setMoney(
|
|
293
|
-
gvc,
|
|
294
|
-
n,
|
|
295
|
-
money => {
|
|
296
|
-
if (money === data.sale_price) {
|
|
297
|
-
delete obj.ogOrderData.lineItems[index].custom_price;
|
|
298
|
-
} else {
|
|
299
|
-
obj.ogOrderData.lineItems[index].custom_price = money;
|
|
300
|
-
}
|
|
301
|
-
refreshOrderView();
|
|
302
|
-
},
|
|
303
|
-
'更改商品單價'
|
|
304
|
-
);
|
|
305
|
-
})}"
|
|
306
|
-
>
|
|
320
|
+
<div class="d-flex align-items-center justify-content-center flex-column gap-0">
|
|
307
321
|
${(() => {
|
|
308
322
|
function formatPrice(price: any) {
|
|
309
323
|
return `$${parseInt(`${price}`, 10).toLocaleString()}`;
|
|
@@ -324,80 +338,114 @@ export class PaymentPage {
|
|
|
324
338
|
})()}
|
|
325
339
|
</div>
|
|
326
340
|
</div>
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
341
|
+
</div>
|
|
342
|
+
<div class="col-2 d-none d-sm-flex align-items-center justify-content-start gap-2">
|
|
343
|
+
$ ${parseInt(data.sale_price as any, 10).toLocaleString()}
|
|
344
|
+
${resetSalePriceIcon(data, index)}
|
|
345
|
+
</div>
|
|
346
|
+
<div
|
|
347
|
+
class="col-3 col-lg-2 d-flex align-items-center justify-content-center d-none d-sm-flex"
|
|
348
|
+
>
|
|
330
349
|
<div
|
|
331
|
-
class="
|
|
332
|
-
style="gap:10px;cursor: pointer;"
|
|
350
|
+
class="pos-count-button"
|
|
333
351
|
onclick="${gvc.event(() => {
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
352
|
+
function callMinus(index: number) {
|
|
353
|
+
obj.ogOrderData.lineItems[index].count = Tool.floatAdd(
|
|
354
|
+
obj.ogOrderData.lineItems[index].count,
|
|
355
|
+
-1
|
|
356
|
+
);
|
|
357
|
+
refreshOrderView();
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
if (obj.ogOrderData.lineItems[index].count - 1 > 0) {
|
|
361
|
+
callMinus(index);
|
|
362
|
+
} else {
|
|
363
|
+
dialog.checkYesOrNot({
|
|
364
|
+
text: '確定要移除此商品嗎?',
|
|
365
|
+
callback: bool => bool && callMinus(index),
|
|
366
|
+
});
|
|
367
|
+
}
|
|
345
368
|
})}"
|
|
346
369
|
>
|
|
347
|
-
${
|
|
370
|
+
${this.minusSVG}
|
|
348
371
|
</div>
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
delete obj.ogOrderData.lineItems[index].custom_price;
|
|
372
|
+
${data.product_category === 'weighing'
|
|
373
|
+
? html`<input
|
|
374
|
+
class="border-0 pos-count-input"
|
|
375
|
+
value="${obj.ogOrderData.lineItems[index].count}"
|
|
376
|
+
onchange="${gvc.event(e => {
|
|
377
|
+
const originNum = obj.ogOrderData.lineItems[index].count;
|
|
378
|
+
const n = parseFloat(e.value);
|
|
379
|
+
|
|
380
|
+
if (CheckInput.isNumberString(`${n}`) && n > 0) {
|
|
381
|
+
obj.ogOrderData.lineItems[index].count = Tool.floatAdd(n, 0);
|
|
382
|
+
refreshOrderView();
|
|
361
383
|
} else {
|
|
362
|
-
|
|
384
|
+
e.value = originNum;
|
|
363
385
|
}
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
386
|
+
})}"
|
|
387
|
+
/>`
|
|
388
|
+
: html`<div
|
|
389
|
+
class="border-0 pos-count-input cursor_pointer"
|
|
390
|
+
style="margin-bottom: 3px;"
|
|
391
|
+
onclick="${gvc.event(() => {
|
|
392
|
+
const def = obj.ogOrderData.lineItems?.[index]?.count || 0;
|
|
393
|
+
|
|
394
|
+
PosFunction.setMoney(
|
|
395
|
+
gvc,
|
|
396
|
+
def,
|
|
397
|
+
count => {
|
|
398
|
+
obj.ogOrderData.lineItems[index].count = count;
|
|
399
|
+
refreshOrderView();
|
|
400
|
+
},
|
|
401
|
+
'更改商品數量'
|
|
402
|
+
);
|
|
403
|
+
})}"
|
|
404
|
+
>
|
|
405
|
+
${data.count}
|
|
406
|
+
</div>`}
|
|
407
|
+
<div
|
|
408
|
+
class="pos-count-button"
|
|
409
|
+
onclick="${gvc.event(() => {
|
|
410
|
+
obj.ogOrderData.lineItems[index].count = Tool.floatAdd(
|
|
411
|
+
obj.ogOrderData.lineItems[index].count,
|
|
412
|
+
1
|
|
367
413
|
);
|
|
414
|
+
refreshOrderView();
|
|
368
415
|
})}"
|
|
369
416
|
>
|
|
370
|
-
${
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
417
|
+
${this.plusSVG}
|
|
418
|
+
</div>
|
|
419
|
+
</div>
|
|
420
|
+
<div
|
|
421
|
+
class="col-3 col-lg-2 d-flex align-items-center justify-content-center d-none d-sm-flex"
|
|
422
|
+
style="gap:10px;"
|
|
423
|
+
>
|
|
424
|
+
${(() => {
|
|
425
|
+
function formatPrice(price: any) {
|
|
426
|
+
return `$${parseInt(`${price}`, 10).toLocaleString()}`;
|
|
427
|
+
}
|
|
374
428
|
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
429
|
+
if (data.variant_sale_price && data.sale_price !== data.variant_sale_price) {
|
|
430
|
+
return html`
|
|
431
|
+
<span class="text-decoration-line-through"
|
|
432
|
+
>${formatPrice(data.variant_sale_price * data.count)}</span
|
|
433
|
+
>
|
|
434
|
+
<span class="text-danger">${formatPrice(data.sale_price * data.count)}</span>
|
|
435
|
+
`;
|
|
436
|
+
}
|
|
383
437
|
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
</div>
|
|
438
|
+
return html`<span>${formatPrice(data.sale_price * data.count)}</span> `;
|
|
439
|
+
})()}
|
|
387
440
|
</div>
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
}
|
|
397
|
-
})()
|
|
398
|
-
);
|
|
399
|
-
}
|
|
400
|
-
return ``;
|
|
441
|
+
</div>
|
|
442
|
+
`;
|
|
443
|
+
})
|
|
444
|
+
.join(
|
|
445
|
+
document.body.clientWidth < 800
|
|
446
|
+
? html`<div style="margin-top: 20px;background: #DDD;width: 100%;height: 1px;"></div>`
|
|
447
|
+
: ''
|
|
448
|
+
);
|
|
401
449
|
})()}
|
|
402
450
|
</div>
|
|
403
451
|
</div>
|
|
@@ -424,7 +472,7 @@ export class PaymentPage {
|
|
|
424
472
|
class="w-100 d-flex align-items-center justify-content-center"
|
|
425
473
|
style="cursor:pointer;flex:1; height: 65px; ${vm.type === 'old'
|
|
426
474
|
? `border-radius: 0px 10px 0px 0px; background: #FFF;`
|
|
427
|
-
:
|
|
475
|
+
: ''}"
|
|
428
476
|
onclick="${gvc.event(() => {
|
|
429
477
|
vm.type = 'old';
|
|
430
478
|
gvc.notifyDataChange(vm.id);
|
|
@@ -436,7 +484,7 @@ export class PaymentPage {
|
|
|
436
484
|
class="w-100 d-flex align-items-center justify-content-center"
|
|
437
485
|
style="cursor:pointer;flex:1; height: 65px;${vm.type === 'new'
|
|
438
486
|
? `border-radius: 10px 10px 0px 0px; background: #FFF;`
|
|
439
|
-
:
|
|
487
|
+
: ''}"
|
|
440
488
|
onclick="${gvc.event(() => {
|
|
441
489
|
vm.type = 'new';
|
|
442
490
|
gvc.notifyDataChange(vm.id);
|
|
@@ -564,7 +612,6 @@ export class PaymentPage {
|
|
|
564
612
|
</div>
|
|
565
613
|
</div>
|
|
566
614
|
<div
|
|
567
|
-
class=""
|
|
568
615
|
style="display: flex; width: 44px; height: 44px; padding: 8px 10px; border-radius: 10px; border: 1px solid #DDD; justify-content: center; align-items: center; gap: 8px; flex-shrink: 0;"
|
|
569
616
|
onclick="${gvc.event(() => {
|
|
570
617
|
gvc.glitter.runJsInterFace('start_scan', {}, async res => {
|
|
@@ -797,7 +844,7 @@ export class PaymentPage {
|
|
|
797
844
|
}
|
|
798
845
|
},
|
|
799
846
|
divCreate: {
|
|
800
|
-
class:
|
|
847
|
+
class: 'w-100 my-3',
|
|
801
848
|
style: `padding: 20px; border-radius: 10px; border: 1px #DDDDDD solid; flex-direction: column; justify-content: flex-start; align-items: flex-end; gap: 18px; display: inline-flex;`,
|
|
802
849
|
},
|
|
803
850
|
};
|
|
@@ -807,8 +854,8 @@ export class PaymentPage {
|
|
|
807
854
|
return inView.join('');
|
|
808
855
|
},
|
|
809
856
|
divCreate: {
|
|
810
|
-
class:
|
|
811
|
-
style:
|
|
857
|
+
class: 'p-3 bg-white',
|
|
858
|
+
style: 'gap: 14px;',
|
|
812
859
|
},
|
|
813
860
|
};
|
|
814
861
|
})
|
|
@@ -823,10 +870,7 @@ export class PaymentPage {
|
|
|
823
870
|
address: '',
|
|
824
871
|
managerNote: '',
|
|
825
872
|
};
|
|
826
|
-
|
|
827
|
-
config: any;
|
|
828
|
-
api: any;
|
|
829
|
-
} = (window.parent as any).saasConfig;
|
|
873
|
+
|
|
830
874
|
view.push(
|
|
831
875
|
gvc.bindView(() => {
|
|
832
876
|
const id = gvc.glitter.getUUID();
|
|
@@ -845,7 +889,7 @@ export class PaymentPage {
|
|
|
845
889
|
let h = '';
|
|
846
890
|
data.map((item: any) => {
|
|
847
891
|
if (item.hidden) {
|
|
848
|
-
return
|
|
892
|
+
return '';
|
|
849
893
|
}
|
|
850
894
|
if (item.require) {
|
|
851
895
|
need_check[item.key] = true;
|
|
@@ -987,11 +1031,11 @@ export class PaymentPage {
|
|
|
987
1031
|
divCreate: {
|
|
988
1032
|
class: `mx-sm-0`,
|
|
989
1033
|
style: `
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
1034
|
+
border-radius: 10px;
|
|
1035
|
+
overflow: hidden;
|
|
1036
|
+
background: #eaeaea;
|
|
1037
|
+
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
|
|
1038
|
+
`,
|
|
995
1039
|
},
|
|
996
1040
|
};
|
|
997
1041
|
})}
|
|
@@ -1064,18 +1108,21 @@ export class PaymentPage {
|
|
|
1064
1108
|
</div>
|
|
1065
1109
|
`;
|
|
1066
1110
|
} else if (obj.ogOrderData.user_info.shipment === 'normal') {
|
|
1067
|
-
return `<input
|
|
1068
|
-
|
|
1111
|
+
return html`<input
|
|
1112
|
+
class="form-control mt-2"
|
|
1113
|
+
value="${obj.ogOrderData.user_info.address ?? ''}"
|
|
1114
|
+
onchange="${gvc.event(e => {
|
|
1069
1115
|
obj.ogOrderData.user_info.address = e.value;
|
|
1070
|
-
}
|
|
1071
|
-
|
|
1116
|
+
})}"
|
|
1117
|
+
placeholder="請輸入宅配地址"
|
|
1118
|
+
/>`;
|
|
1072
1119
|
} else {
|
|
1073
|
-
return
|
|
1120
|
+
return '';
|
|
1074
1121
|
}
|
|
1075
1122
|
})()}
|
|
1076
1123
|
${(() => {
|
|
1077
1124
|
if (obj.ogOrderData.user_info.shipment === 'now') {
|
|
1078
|
-
return
|
|
1125
|
+
return '';
|
|
1079
1126
|
} else {
|
|
1080
1127
|
return html` ${PaymentPage.spaceView()}
|
|
1081
1128
|
<div
|
|
@@ -1106,7 +1153,7 @@ export class PaymentPage {
|
|
|
1106
1153
|
},
|
|
1107
1154
|
]
|
|
1108
1155
|
.map(dd => {
|
|
1109
|
-
return html` <div class="mb-2 col-${dd.col} ps-0"
|
|
1156
|
+
return html` <div class="mb-2 col-${dd.col} ps-0">
|
|
1110
1157
|
<div>
|
|
1111
1158
|
<div
|
|
1112
1159
|
class="fw-normal mb-2 fs-6"
|
|
@@ -1137,11 +1184,14 @@ export class PaymentPage {
|
|
|
1137
1184
|
{
|
|
1138
1185
|
title: '小計總額',
|
|
1139
1186
|
hint: '',
|
|
1140
|
-
value: (
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1187
|
+
value: parseInt(
|
|
1188
|
+
`${
|
|
1189
|
+
Number(orderDetail.total) +
|
|
1190
|
+
Number(orderDetail.discount) -
|
|
1191
|
+
Number(orderDetail.shipment_fee) +
|
|
1192
|
+
Number(orderDetail.use_rebate)
|
|
1193
|
+
}`,
|
|
1194
|
+
10
|
|
1145
1195
|
).toLocaleString(),
|
|
1146
1196
|
},
|
|
1147
1197
|
...(() => {
|
|
@@ -1192,7 +1242,7 @@ export class PaymentPage {
|
|
|
1192
1242
|
return `${isMinus} $${(dd.discount_total * isNegative).toLocaleString()}`;
|
|
1193
1243
|
})()}
|
|
1194
1244
|
<i
|
|
1195
|
-
class="fa-solid fa-xmark ${dd.code || dd.id === 0 ?
|
|
1245
|
+
class="fa-solid fa-xmark ${dd.code || dd.id === 0 ? '' : `d-none`} fs-5"
|
|
1196
1246
|
style="color:#949494;"
|
|
1197
1247
|
onclick="${gvc.event(() => {
|
|
1198
1248
|
const dialog = new ShareDialog(gvc.glitter);
|
|
@@ -1238,7 +1288,7 @@ export class PaymentPage {
|
|
|
1238
1288
|
${dd.title}
|
|
1239
1289
|
</div>
|
|
1240
1290
|
<div
|
|
1241
|
-
class="${dd.hint ?
|
|
1291
|
+
class="${dd.hint ? '' : 'd-none'}"
|
|
1242
1292
|
style="align-self: stretch; color: #8D8D8D; font-size: 16px; font-family: Noto Sans; text-transform: uppercase; letter-spacing: 0.64px; word-wrap: break-word"
|
|
1243
1293
|
>
|
|
1244
1294
|
${dd.hint}
|
|
@@ -1417,7 +1467,7 @@ export class PaymentPage {
|
|
|
1417
1467
|
.join('');
|
|
1418
1468
|
} else {
|
|
1419
1469
|
return html` <div class="w-100 d-flex flex-column">
|
|
1420
|
-
<div class="d-flex align-items-center justify-content-center w-100 "
|
|
1470
|
+
<div class="d-flex align-items-center justify-content-center w-100 ">
|
|
1421
1471
|
<div class="d-flex" style="flex:68;">${PosWidget.fontLight('付款方式')}</div>
|
|
1422
1472
|
<div class="d-flex" style="flex:94;">${PosWidget.fontLight('付款金額')}</div>
|
|
1423
1473
|
<div class="d-flex" style="flex:68;">${PosWidget.fontLight('狀態')}</div>
|
|
@@ -1448,7 +1498,6 @@ export class PaymentPage {
|
|
|
1448
1498
|
<div class="d-flex" style="flex:94;">
|
|
1449
1499
|
<input
|
|
1450
1500
|
style="display: flex;width: calc(100% - 20px);padding: 9px 18px;border-radius: 10px;border: 1px solid #DDD;text-align: right;"
|
|
1451
|
-
class=""
|
|
1452
1501
|
value="${dd.total}"
|
|
1453
1502
|
onclick="${gvc.event(() => {
|
|
1454
1503
|
if (dd.paied) {
|
|
@@ -1531,8 +1580,12 @@ export class PaymentPage {
|
|
|
1531
1580
|
}
|
|
1532
1581
|
},
|
|
1533
1582
|
divCreate: {
|
|
1534
|
-
|
|
1535
|
-
|
|
1583
|
+
style: `
|
|
1584
|
+
display: flex;
|
|
1585
|
+
justify-content: space-between;
|
|
1586
|
+
margin-top: 24px;
|
|
1587
|
+
gap: 15px;
|
|
1588
|
+
`,
|
|
1536
1589
|
},
|
|
1537
1590
|
})}`,
|
|
1538
1591
|
html` <div style="height:24px;"></div>`,
|
|
@@ -1549,7 +1602,7 @@ export class PaymentPage {
|
|
|
1549
1602
|
});
|
|
1550
1603
|
})
|
|
1551
1604
|
),
|
|
1552
|
-
`<div style="height:24px;"></div>`,
|
|
1605
|
+
html`<div style="height:24px;"></div>`,
|
|
1553
1606
|
];
|
|
1554
1607
|
if (
|
|
1555
1608
|
obj.ogOrderData.pos_info.payment.length === 1 &&
|
|
@@ -1582,9 +1635,7 @@ export class PaymentPage {
|
|
|
1582
1635
|
}
|
|
1583
1636
|
view.push(PaymentPage.spaceView());
|
|
1584
1637
|
const total = obj.ogOrderData.pos_info.payment
|
|
1585
|
-
.map((dd: any) =>
|
|
1586
|
-
return dd.total;
|
|
1587
|
-
})
|
|
1638
|
+
.map((dd: any) => dd.total)
|
|
1588
1639
|
.reduce((accumulator: number, currentValue: number) => accumulator + currentValue, 0);
|
|
1589
1640
|
|
|
1590
1641
|
view.push(
|
|
@@ -1640,7 +1691,8 @@ export class PaymentPage {
|
|
|
1640
1691
|
dialog.errorMessage({ text: '請選擇到店門市' });
|
|
1641
1692
|
return;
|
|
1642
1693
|
}
|
|
1643
|
-
|
|
1694
|
+
|
|
1695
|
+
// 設定POS機資訊
|
|
1644
1696
|
orderDetail.pos_info = {
|
|
1645
1697
|
who: gvc.glitter.share.select_member,
|
|
1646
1698
|
where_store: POSSetting.config.where_store,
|
|
@@ -1654,7 +1706,8 @@ export class PaymentPage {
|
|
|
1654
1706
|
passData.orderStatus = 1;
|
|
1655
1707
|
passData.pay_status = 1;
|
|
1656
1708
|
passData.pre_order = pre_order;
|
|
1657
|
-
|
|
1709
|
+
|
|
1710
|
+
// 只有一種付款方式時結帳付款
|
|
1658
1711
|
if (
|
|
1659
1712
|
obj.ogOrderData.pos_info.payment.length === 1 &&
|
|
1660
1713
|
obj.ogOrderData.pos_info.payment.find((dd: any) => {
|
|
@@ -1733,7 +1786,6 @@ export class PaymentPage {
|
|
|
1733
1786
|
<i class="fa-solid fa-down-to-bracket fs-4"></i>
|
|
1734
1787
|
</div>
|
|
1735
1788
|
<div
|
|
1736
|
-
class=""
|
|
1737
1789
|
style="flex:1;display: flex;padding: 10px;justify-content: center;align-items: center;border-radius: 10px;background: #FF6C02;color: #FFF;font-size: 18px;font-style: normal;font-weight: 500;line-height: normal;letter-spacing: 0.72px;"
|
|
1738
1790
|
onclick="${gvc.event(() => {
|
|
1739
1791
|
if (
|
|
@@ -1760,7 +1812,6 @@ export class PaymentPage {
|
|
|
1760
1812
|
建立預購單
|
|
1761
1813
|
</div>
|
|
1762
1814
|
<div
|
|
1763
|
-
class=""
|
|
1764
1815
|
style="flex:1;display: flex;padding: 10px;justify-content: center;align-items: center;border-radius: 10px;background: #393939;color: #FFF;font-size: 18px;font-style: normal;font-weight: 500;line-height: normal;letter-spacing: 0.72px;"
|
|
1765
1816
|
onclick="${gvc.event(() => {
|
|
1766
1817
|
if (total - parseInt(orderDetail.total as any, 10) < 0) {
|
|
@@ -1791,7 +1842,7 @@ export class PaymentPage {
|
|
|
1791
1842
|
|
|
1792
1843
|
PaymentPage.storeHistory(orderDetail);
|
|
1793
1844
|
dialog.checkYesOrNot({
|
|
1794
|
-
text: '
|
|
1845
|
+
text: '是否確認前往結帳?',
|
|
1795
1846
|
callback: response => {
|
|
1796
1847
|
if (response) {
|
|
1797
1848
|
paymentNext(false);
|
|
@@ -1867,9 +1918,7 @@ export class PaymentPage {
|
|
|
1867
1918
|
async function next() {
|
|
1868
1919
|
const dialog = new ShareDialog(gvc.glitter);
|
|
1869
1920
|
orderDetail.code_array = orderDetail.code_array || [];
|
|
1870
|
-
orderDetail.code_array = orderDetail.code_array.filter((dd: any) =>
|
|
1871
|
-
return dd !== c_vm.value;
|
|
1872
|
-
});
|
|
1921
|
+
orderDetail.code_array = orderDetail.code_array.filter((dd: any) => dd !== c_vm.value);
|
|
1873
1922
|
orderDetail.code_array.push(c_vm.value);
|
|
1874
1923
|
dialog.dataLoading({ visible: true });
|
|
1875
1924
|
const od: any = (
|
|
@@ -1881,15 +1930,8 @@ export class PaymentPage {
|
|
|
1881
1930
|
})
|
|
1882
1931
|
).response.data;
|
|
1883
1932
|
dialog.dataLoading({ visible: false });
|
|
1884
|
-
if (
|
|
1885
|
-
|
|
1886
|
-
!od.voucherList.find((dd: any) => {
|
|
1887
|
-
return dd.code === c_vm.value;
|
|
1888
|
-
})
|
|
1889
|
-
) {
|
|
1890
|
-
orderDetail.code_array = orderDetail.code_array.filter((dd: any) => {
|
|
1891
|
-
return dd !== c_vm.value;
|
|
1892
|
-
});
|
|
1933
|
+
if (!od || !od.voucherList.find((dd: any) => dd.code === c_vm.value)) {
|
|
1934
|
+
orderDetail.code_array = orderDetail.code_array.filter((dd: any) => dd !== c_vm.value);
|
|
1893
1935
|
dialog.errorMessage({ text: '請輸入正確的優惠代碼' });
|
|
1894
1936
|
} else {
|
|
1895
1937
|
gvc.closeDialog();
|
|
@@ -1908,7 +1950,6 @@ export class PaymentPage {
|
|
|
1908
1950
|
請掃描或輸入優惠代碼
|
|
1909
1951
|
</div>
|
|
1910
1952
|
<img
|
|
1911
|
-
class=""
|
|
1912
1953
|
style="max-width:70%;"
|
|
1913
1954
|
src="https://d3jnmi1tfjgtti.cloudfront.net/file/234285319/size1440_s*px$_s5sasfscsbs7s3sf_%E6%88%AA%E5%9C%962024-08-30%E4%B8%8B%E5%8D%882.29.361.png"
|
|
1914
1955
|
/>
|
|
@@ -2003,7 +2044,6 @@ export class PaymentPage {
|
|
|
2003
2044
|
請掃描或輸入會員代碼
|
|
2004
2045
|
</div>
|
|
2005
2046
|
<img
|
|
2006
|
-
class=""
|
|
2007
2047
|
style="max-width:70%;"
|
|
2008
2048
|
src="https://d3jnmi1tfjgtti.cloudfront.net/file/234285319/size1440_s*px$_s5sasfscsbs7s3sf_%E6%88%AA%E5%9C%962024-08-30%E4%B8%8B%E5%8D%882.29.361.png"
|
|
2009
2049
|
/>
|
|
@@ -2182,9 +2222,9 @@ export class PaymentPage {
|
|
|
2182
2222
|
PayConfig.pos_config.pos_support_finction.includes('print_order_detail')
|
|
2183
2223
|
) {
|
|
2184
2224
|
if (PayConfig.deviceType === 'pos') {
|
|
2185
|
-
|
|
2225
|
+
// 客戶聯
|
|
2186
2226
|
await IminModule.printTransactionDetails(res.response.data.orderID, invoice, glitter.share.staff_title);
|
|
2187
|
-
|
|
2227
|
+
// 如果需要收執聯的話
|
|
2188
2228
|
if (
|
|
2189
2229
|
PayConfig.pos_config.pos_support_finction.includes('print_order_receipt') &&
|
|
2190
2230
|
PayConfig.pos_config.pos_support_finction.includes('print_order_detail')
|
|
@@ -2225,34 +2265,11 @@ export class PaymentPage {
|
|
|
2225
2265
|
<div
|
|
2226
2266
|
style="position: relative;max-width:calc(100% - 20px);width: 492px;height: 223px;border-radius: 10px;background: #FFF;display: flex;flex-direction: column;align-items: center;justify-content: center;"
|
|
2227
2267
|
>
|
|
2228
|
-
|
|
2229
|
-
|
|
2230
|
-
width="14"
|
|
2231
|
-
height="14"
|
|
2232
|
-
viewBox="0 0 14 14"
|
|
2233
|
-
fill="none"
|
|
2234
|
-
style="position: absolute;top: 12px;right: 12px;cursor: pointer;"
|
|
2235
|
-
onclick="${gvc.event(() => {
|
|
2268
|
+
${PaymentPage.checkSVG(
|
|
2269
|
+
gvc.event(() => {
|
|
2236
2270
|
gvc.glitter.closeDiaLog();
|
|
2237
|
-
})
|
|
2238
|
-
|
|
2239
|
-
<path d="M1 1L13 13" stroke="#393939" stroke-linecap="round" />
|
|
2240
|
-
<path d="M13 1L1 13" stroke="#393939" stroke-linecap="round" />
|
|
2241
|
-
</svg>
|
|
2242
|
-
|
|
2243
|
-
<svg xmlns="http://www.w3.org/2000/svg" width="75" height="75" viewBox="0 0 75 75" fill="none">
|
|
2244
|
-
<g clip-path="url(#clip0_9850_171427)">
|
|
2245
|
-
<path
|
|
2246
|
-
d="M37.5 7.03125C45.5808 7.03125 53.3307 10.2413 59.0447 15.9553C64.7587 21.6693 67.9688 29.4192 67.9688 37.5C67.9688 45.5808 64.7587 53.3307 59.0447 59.0447C53.3307 64.7587 45.5808 67.9688 37.5 67.9688C29.4192 67.9688 21.6693 64.7587 15.9553 59.0447C10.2413 53.3307 7.03125 45.5808 7.03125 37.5C7.03125 29.4192 10.2413 21.6693 15.9553 15.9553C21.6693 10.2413 29.4192 7.03125 37.5 7.03125ZM37.5 75C47.4456 75 56.9839 71.0491 64.0165 64.0165C71.0491 56.9839 75 47.4456 75 37.5C75 27.5544 71.0491 18.0161 64.0165 10.9835C56.9839 3.95088 47.4456 0 37.5 0C27.5544 0 18.0161 3.95088 10.9835 10.9835C3.95088 18.0161 0 27.5544 0 37.5C0 47.4456 3.95088 56.9839 10.9835 64.0165C18.0161 71.0491 27.5544 75 37.5 75ZM54.0527 30.6152C55.4297 29.2383 55.4297 27.0117 54.0527 25.6494C52.6758 24.2871 50.4492 24.2725 49.0869 25.6494L32.8271 41.9092L25.9424 35.0244C24.5654 33.6475 22.3389 33.6475 20.9766 35.0244C19.6143 36.4014 19.5996 38.6279 20.9766 39.9902L30.3516 49.3652C31.7285 50.7422 33.9551 50.7422 35.3174 49.3652L54.0527 30.6152Z"
|
|
2247
|
-
fill="#393939"
|
|
2248
|
-
/>
|
|
2249
|
-
</g>
|
|
2250
|
-
<defs>
|
|
2251
|
-
<clipPath id="clip0_9850_171427">
|
|
2252
|
-
<rect width="75" height="75" fill="white" />
|
|
2253
|
-
</clipPath>
|
|
2254
|
-
</defs>
|
|
2255
|
-
</svg>
|
|
2271
|
+
})
|
|
2272
|
+
)}
|
|
2256
2273
|
<div
|
|
2257
2274
|
style="text-align: center;color: #393939;font-size: 16px;font-weight: 400;line-height: 160%;margin-top: 24px;"
|
|
2258
2275
|
>
|
|
@@ -2264,22 +2281,18 @@ export class PaymentPage {
|
|
|
2264
2281
|
},
|
|
2265
2282
|
'orderFinish',
|
|
2266
2283
|
{
|
|
2267
|
-
dismiss: () => {
|
|
2268
|
-
// vm.type = "list";
|
|
2269
|
-
},
|
|
2284
|
+
dismiss: () => {},
|
|
2270
2285
|
}
|
|
2271
2286
|
);
|
|
2272
2287
|
}
|
|
2273
2288
|
});
|
|
2274
2289
|
}
|
|
2275
2290
|
|
|
2276
|
-
|
|
2291
|
+
// 不開立電子發票直接執行
|
|
2277
2292
|
if (
|
|
2278
2293
|
(await ApiShop.getInvoiceType()).response.method === 'nouse' ||
|
|
2279
2294
|
orderDetail.pos_info.payment
|
|
2280
|
-
.map((dd: any) =>
|
|
2281
|
-
return dd.total;
|
|
2282
|
-
})
|
|
2295
|
+
.map((dd: any) => dd.total)
|
|
2283
2296
|
.reduce((accumulator: number, currentValue: number) => accumulator + currentValue, 0) < orderDetail.total ||
|
|
2284
2297
|
!PayConfig.pos_config.pos_support_finction.includes('print_invoice')
|
|
2285
2298
|
) {
|
|
@@ -2312,22 +2325,22 @@ export class PaymentPage {
|
|
|
2312
2325
|
{
|
|
2313
2326
|
title: PayConfig.deviceType === 'pos' || ConnectionMode.on_connected_device ? `列印` : `寄送`,
|
|
2314
2327
|
value: 'print',
|
|
2315
|
-
icon: `<i class="fa-regular fa-print"></i>`,
|
|
2328
|
+
icon: html`<i class="fa-regular fa-print"></i>`,
|
|
2316
2329
|
},
|
|
2317
2330
|
{
|
|
2318
2331
|
title: `載具`,
|
|
2319
2332
|
value: 'carry',
|
|
2320
|
-
icon: `<i class="fa-regular fa-mobile"></i>`,
|
|
2333
|
+
icon: html`<i class="fa-regular fa-mobile"></i>`,
|
|
2321
2334
|
},
|
|
2322
2335
|
{
|
|
2323
2336
|
title: `統編`,
|
|
2324
2337
|
value: 'company',
|
|
2325
|
-
icon: `<i class="fa-regular fa-building"></i>`,
|
|
2338
|
+
icon: html`<i class="fa-regular fa-building"></i>`,
|
|
2326
2339
|
},
|
|
2327
2340
|
{
|
|
2328
2341
|
title: `不開立`,
|
|
2329
2342
|
value: 'nouse',
|
|
2330
|
-
icon: `<i class="fa-solid fa-ban"></i>`,
|
|
2343
|
+
icon: html`<i class="fa-solid fa-ban"></i>`,
|
|
2331
2344
|
},
|
|
2332
2345
|
];
|
|
2333
2346
|
return btnArray
|
|
@@ -2346,7 +2359,7 @@ export class PaymentPage {
|
|
|
2346
2359
|
gvc.recreateView();
|
|
2347
2360
|
})}"
|
|
2348
2361
|
>
|
|
2349
|
-
<div
|
|
2362
|
+
<div class="fs-2">${btn.icon}</div>
|
|
2350
2363
|
<div style="font-size: 16px;font-weight: 500;letter-spacing: 0.64px;">${btn.title}</div>
|
|
2351
2364
|
</div>
|
|
2352
2365
|
</div>
|
|
@@ -2422,7 +2435,7 @@ export class PaymentPage {
|
|
|
2422
2435
|
</div>
|
|
2423
2436
|
</div>`;
|
|
2424
2437
|
} else {
|
|
2425
|
-
return
|
|
2438
|
+
return '';
|
|
2426
2439
|
}
|
|
2427
2440
|
})()}
|
|
2428
2441
|
<div
|
|
@@ -2432,9 +2445,7 @@ export class PaymentPage {
|
|
|
2432
2445
|
<div
|
|
2433
2446
|
class="flex-fill"
|
|
2434
2447
|
style="border-radius: 10px;background: #393939;padding: 12px 24px;color: #FFF;text-align:center;"
|
|
2435
|
-
onclick="${gvc.event(() =>
|
|
2436
|
-
next();
|
|
2437
|
-
})}"
|
|
2448
|
+
onclick="${gvc.event(() => next())}"
|
|
2438
2449
|
>
|
|
2439
2450
|
確定
|
|
2440
2451
|
</div>
|
|
@@ -2446,7 +2457,6 @@ export class PaymentPage {
|
|
|
2446
2457
|
'selectInvoice',
|
|
2447
2458
|
{
|
|
2448
2459
|
dismiss: () => {
|
|
2449
|
-
// vm.type = "list";
|
|
2450
2460
|
gvc.glitter.share.scan_back = () => {};
|
|
2451
2461
|
},
|
|
2452
2462
|
}
|
|
@@ -2486,4 +2496,217 @@ export class PaymentPage {
|
|
|
2486
2496
|
callback();
|
|
2487
2497
|
}
|
|
2488
2498
|
}
|
|
2499
|
+
|
|
2500
|
+
static minusSVG = html`<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 10 10" fill="none">
|
|
2501
|
+
<path
|
|
2502
|
+
d="M9.64314 5C9.64314 5.3457 9.32394 5.625 8.92885 5.625H1.07171C0.676618 5.625 0.357422 5.3457 0.357422 5C0.357422 4.6543 0.676618 4.375 1.07171 4.375H8.92885C9.32394 4.375 9.64314 4.6543 9.64314 5Z"
|
|
2503
|
+
fill="white"
|
|
2504
|
+
/>
|
|
2505
|
+
</svg>`;
|
|
2506
|
+
|
|
2507
|
+
static plusSVG = html`<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10" viewBox="0 0 10 10" fill="none">
|
|
2508
|
+
<path
|
|
2509
|
+
d="M5.76923 0.769231C5.76923 0.34375 5.42548 0 5 0C4.57452 0 4.23077 0.34375 4.23077 0.769231V4.23077H0.769231C0.34375 4.23077 0 4.57452 0 5C0 5.42548 0.34375 5.76923 0.769231 5.76923H4.23077V9.23077C4.23077 9.65625 4.57452 10 5 10C5.42548 10 5.76923 9.65625 5.76923 9.23077V5.76923H9.23077C9.65625 5.76923 10 5.42548 10 5C10 4.57452 9.65625 4.23077 9.23077 4.23077H5.76923V0.769231Z"
|
|
2510
|
+
fill="white"
|
|
2511
|
+
/>
|
|
2512
|
+
</svg>`;
|
|
2513
|
+
|
|
2514
|
+
static checkSVG = (clickEvent: string) =>
|
|
2515
|
+
html`<svg
|
|
2516
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
2517
|
+
width="14"
|
|
2518
|
+
height="14"
|
|
2519
|
+
viewBox="0 0 14 14"
|
|
2520
|
+
fill="none"
|
|
2521
|
+
style="position: absolute;top: 12px;right: 12px;cursor: pointer;"
|
|
2522
|
+
onclick="${clickEvent}"
|
|
2523
|
+
>
|
|
2524
|
+
<path d="M1 1L13 13" stroke="#393939" stroke-linecap="round" />
|
|
2525
|
+
<path d="M13 1L1 13" stroke="#393939" stroke-linecap="round" />
|
|
2526
|
+
</svg>
|
|
2527
|
+
|
|
2528
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="75" height="75" viewBox="0 0 75 75" fill="none">
|
|
2529
|
+
<g clip-path="url(#clip0_9850_171427)">
|
|
2530
|
+
<path
|
|
2531
|
+
d="M37.5 7.03125C45.5808 7.03125 53.3307 10.2413 59.0447 15.9553C64.7587 21.6693 67.9688 29.4192 67.9688 37.5C67.9688 45.5808 64.7587 53.3307 59.0447 59.0447C53.3307 64.7587 45.5808 67.9688 37.5 67.9688C29.4192 67.9688 21.6693 64.7587 15.9553 59.0447C10.2413 53.3307 7.03125 45.5808 7.03125 37.5C7.03125 29.4192 10.2413 21.6693 15.9553 15.9553C21.6693 10.2413 29.4192 7.03125 37.5 7.03125ZM37.5 75C47.4456 75 56.9839 71.0491 64.0165 64.0165C71.0491 56.9839 75 47.4456 75 37.5C75 27.5544 71.0491 18.0161 64.0165 10.9835C56.9839 3.95088 47.4456 0 37.5 0C27.5544 0 18.0161 3.95088 10.9835 10.9835C3.95088 18.0161 0 27.5544 0 37.5C0 47.4456 3.95088 56.9839 10.9835 64.0165C18.0161 71.0491 27.5544 75 37.5 75ZM54.0527 30.6152C55.4297 29.2383 55.4297 27.0117 54.0527 25.6494C52.6758 24.2871 50.4492 24.2725 49.0869 25.6494L32.8271 41.9092L25.9424 35.0244C24.5654 33.6475 22.3389 33.6475 20.9766 35.0244C19.6143 36.4014 19.5996 38.6279 20.9766 39.9902L30.3516 49.3652C31.7285 50.7422 33.9551 50.7422 35.3174 49.3652L54.0527 30.6152Z"
|
|
2532
|
+
fill="#393939"
|
|
2533
|
+
/>
|
|
2534
|
+
</g>
|
|
2535
|
+
<defs>
|
|
2536
|
+
<clipPath id="clip0_9850_171427">
|
|
2537
|
+
<rect width="75" height="75" fill="white" />
|
|
2538
|
+
</clipPath>
|
|
2539
|
+
</defs>
|
|
2540
|
+
</svg>`;
|
|
2541
|
+
|
|
2542
|
+
static addStyle(gvc: GVC) {
|
|
2543
|
+
const isPhone = document.body.offsetWidth < 800;
|
|
2544
|
+
gvc.addStyle(`
|
|
2545
|
+
.pos-select {
|
|
2546
|
+
font-size: 18px;
|
|
2547
|
+
width: ${isPhone ? '100%' : '131px'};
|
|
2548
|
+
height: 51px;
|
|
2549
|
+
white-space: nowrap;
|
|
2550
|
+
display: flex;
|
|
2551
|
+
padding: 12px;
|
|
2552
|
+
justify-content: center;
|
|
2553
|
+
align-items: center;
|
|
2554
|
+
border-radius: 10px;
|
|
2555
|
+
box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.1);
|
|
2556
|
+
}
|
|
2557
|
+
|
|
2558
|
+
.pos-category {
|
|
2559
|
+
font-size: 18px;
|
|
2560
|
+
width: 131px;
|
|
2561
|
+
height: 51px;
|
|
2562
|
+
margin-right: 16px;
|
|
2563
|
+
white-space: nowrap;
|
|
2564
|
+
display: flex;
|
|
2565
|
+
padding: 12px 24px;
|
|
2566
|
+
justify-content: center;
|
|
2567
|
+
align-items: center;
|
|
2568
|
+
border-radius: 10px;
|
|
2569
|
+
box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, 0.1);
|
|
2570
|
+
}
|
|
2571
|
+
|
|
2572
|
+
.pos-product-card {
|
|
2573
|
+
flex-basis: 188px;
|
|
2574
|
+
flex-grow: 1;
|
|
2575
|
+
border-radius: 10px;
|
|
2576
|
+
box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.08);
|
|
2577
|
+
}
|
|
2578
|
+
|
|
2579
|
+
.pos-bgr-image {
|
|
2580
|
+
border-radius: 10px 10px 0 0;
|
|
2581
|
+
background: 50% / cover no-repeat;
|
|
2582
|
+
}
|
|
2583
|
+
|
|
2584
|
+
.pos-product-title {
|
|
2585
|
+
font-size: 18px;
|
|
2586
|
+
width: 100%;
|
|
2587
|
+
overflow: hidden;
|
|
2588
|
+
display: -webkit-box;
|
|
2589
|
+
-webkit-line-clamp: 2;
|
|
2590
|
+
text-overflow: ellipsis;
|
|
2591
|
+
word-break: break-word;
|
|
2592
|
+
-webkit-box-orient: vertical;
|
|
2593
|
+
}
|
|
2594
|
+
|
|
2595
|
+
.pos-product-container {
|
|
2596
|
+
overflow: scroll;
|
|
2597
|
+
max-height: 100%;
|
|
2598
|
+
padding-bottom: 100px !important;
|
|
2599
|
+
${
|
|
2600
|
+
isPhone
|
|
2601
|
+
? `
|
|
2602
|
+
padding-left: 12px;
|
|
2603
|
+
padding-right: 12px;
|
|
2604
|
+
justify-content: space-between;
|
|
2605
|
+
`
|
|
2606
|
+
: `
|
|
2607
|
+
gap: 26px;
|
|
2608
|
+
margin-left: 32px;
|
|
2609
|
+
margin-right: 32px;
|
|
2610
|
+
`
|
|
2611
|
+
}
|
|
2612
|
+
}
|
|
2613
|
+
|
|
2614
|
+
.pos-drawer {
|
|
2615
|
+
height: 100%;
|
|
2616
|
+
width: 352px;
|
|
2617
|
+
max-width: 100%;
|
|
2618
|
+
overflow: auto;
|
|
2619
|
+
background: #fff;
|
|
2620
|
+
box-shadow: 1px 0 10px 0 rgba(0, 0, 0, 0.1);
|
|
2621
|
+
}
|
|
2622
|
+
|
|
2623
|
+
.pos-check-container {
|
|
2624
|
+
height: 50px;
|
|
2625
|
+
margin-bottom: 24px;
|
|
2626
|
+
margin-top: ${gvc.glitter.share.top_inset}px;
|
|
2627
|
+
}
|
|
2628
|
+
|
|
2629
|
+
.pos-check-loading {
|
|
2630
|
+
background: #ffb400;
|
|
2631
|
+
color: #393939;
|
|
2632
|
+
gap: 10px;
|
|
2633
|
+
}
|
|
2634
|
+
|
|
2635
|
+
.pos-cart-list {
|
|
2636
|
+
color: #393939;
|
|
2637
|
+
font-size: 32px;
|
|
2638
|
+
font-weight: 700;
|
|
2639
|
+
letter-spacing: 3px;
|
|
2640
|
+
}
|
|
2641
|
+
|
|
2642
|
+
.pos-cart-image {
|
|
2643
|
+
height: 67px;
|
|
2644
|
+
width: 66px;
|
|
2645
|
+
margin-right: 12px;
|
|
2646
|
+
min-height: 67px;
|
|
2647
|
+
min-width: 66px;
|
|
2648
|
+
background: 50% / cover;
|
|
2649
|
+
}
|
|
2650
|
+
|
|
2651
|
+
.pos-spec {
|
|
2652
|
+
color: #949494;
|
|
2653
|
+
font-size: 16px;
|
|
2654
|
+
font-style: normal;
|
|
2655
|
+
font-weight: 500;
|
|
2656
|
+
}
|
|
2657
|
+
|
|
2658
|
+
.pos-count-button {
|
|
2659
|
+
display: flex;
|
|
2660
|
+
width: 30px;
|
|
2661
|
+
height: 30px;
|
|
2662
|
+
padding: 8px;
|
|
2663
|
+
justify-content: center;
|
|
2664
|
+
align-items: center;
|
|
2665
|
+
border-radius: 10px;
|
|
2666
|
+
background: #393939;
|
|
2667
|
+
}
|
|
2668
|
+
|
|
2669
|
+
.pos-count-input {
|
|
2670
|
+
width: 60px;
|
|
2671
|
+
height: 25px;
|
|
2672
|
+
color: #393939;
|
|
2673
|
+
font-size: 18px;
|
|
2674
|
+
font-weight: 500;
|
|
2675
|
+
text-align: center;
|
|
2676
|
+
}
|
|
2677
|
+
|
|
2678
|
+
.pos-subtotal {
|
|
2679
|
+
color: #393939;
|
|
2680
|
+
font-size: 18px;
|
|
2681
|
+
font-style: normal;
|
|
2682
|
+
font-weight: 500;
|
|
2683
|
+
letter-spacing: 0.72px;
|
|
2684
|
+
}
|
|
2685
|
+
|
|
2686
|
+
.pos-price-container {
|
|
2687
|
+
margin-top: 24px;
|
|
2688
|
+
border-radius: 10px;
|
|
2689
|
+
border: 1px solid #ddd;
|
|
2690
|
+
background: #fff;
|
|
2691
|
+
display: flex;
|
|
2692
|
+
padding: 24px;
|
|
2693
|
+
flex-direction: column;
|
|
2694
|
+
justify-content: center;
|
|
2695
|
+
}
|
|
2696
|
+
|
|
2697
|
+
.pos-goto-checkout {
|
|
2698
|
+
margin-top: 32px;
|
|
2699
|
+
display: flex;
|
|
2700
|
+
padding: 12px 24px;
|
|
2701
|
+
justify-content: center;
|
|
2702
|
+
align-items: center;
|
|
2703
|
+
border-radius: 10px;
|
|
2704
|
+
background: #393939;
|
|
2705
|
+
font-size: 20px;
|
|
2706
|
+
font-style: normal;
|
|
2707
|
+
font-weight: 500;
|
|
2708
|
+
color: #fff;
|
|
2709
|
+
}
|
|
2710
|
+
`);
|
|
2711
|
+
}
|
|
2489
2712
|
}
|