@pisell/pisellos 3.0.41 → 3.0.42
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/modules/Cart/utils/changePrice.d.ts +3 -0
- package/dist/modules/Cart/utils/changePrice.js +104 -0
- package/dist/modules/Date/index.js +4 -4
- package/dist/modules/Date/types.d.ts +2 -0
- package/dist/modules/Schedule/utils.js +4 -0
- package/dist/solution/BookingByStep/index.d.ts +1 -0
- package/dist/solution/BookingByStep/index.js +21 -3
- package/lib/modules/Cart/utils/changePrice.d.ts +3 -0
- package/lib/modules/Cart/utils/changePrice.js +78 -0
- package/lib/modules/Date/index.js +3 -3
- package/lib/modules/Date/types.d.ts +2 -0
- package/lib/modules/Schedule/utils.js +4 -1
- package/lib/solution/BookingByStep/index.d.ts +1 -0
- package/lib/solution/BookingByStep/index.js +11 -3
- package/package.json +1 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { Product } from "../../Product";
|
|
2
|
+
import { CartItem, IUpdateItemParams } from "../types";
|
|
3
|
+
export declare function updateAllCartItemPrice(cartItems: CartItem[], priceData: any, getProduct: (id: number) => Promise<Product | undefined>, updateCart: (item: IUpdateItemParams) => void): Promise<void>;
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
|
|
3
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
4
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
5
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
9
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
10
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
11
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
12
|
+
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
13
|
+
import Decimal from "decimal.js";
|
|
14
|
+
export function updateAllCartItemPrice(_x, _x2, _x3, _x4) {
|
|
15
|
+
return _updateAllCartItemPrice.apply(this, arguments);
|
|
16
|
+
}
|
|
17
|
+
function _updateAllCartItemPrice() {
|
|
18
|
+
_updateAllCartItemPrice = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(cartItems, priceData, getProduct, updateCart) {
|
|
19
|
+
var _iterator, _step, _loop;
|
|
20
|
+
return _regeneratorRuntime().wrap(function _callee$(_context2) {
|
|
21
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
22
|
+
case 0:
|
|
23
|
+
_iterator = _createForOfIteratorHelper(cartItems);
|
|
24
|
+
_context2.prev = 1;
|
|
25
|
+
_loop = /*#__PURE__*/_regeneratorRuntime().mark(function _loop() {
|
|
26
|
+
var _bundle;
|
|
27
|
+
var item, targetProduct, cartProduct, productInfo, bundle;
|
|
28
|
+
return _regeneratorRuntime().wrap(function _loop$(_context) {
|
|
29
|
+
while (1) switch (_context.prev = _context.next) {
|
|
30
|
+
case 0:
|
|
31
|
+
item = _step.value;
|
|
32
|
+
targetProduct = priceData.find(function (n) {
|
|
33
|
+
return n.id === item.id;
|
|
34
|
+
});
|
|
35
|
+
_context.next = 4;
|
|
36
|
+
return getProduct(item.id);
|
|
37
|
+
case 4:
|
|
38
|
+
cartProduct = _context.sent;
|
|
39
|
+
productInfo = cartProduct === null || cartProduct === void 0 ? void 0 : cartProduct.getData();
|
|
40
|
+
bundle = item._bundleOrigin;
|
|
41
|
+
productInfo.price = targetProduct === null || targetProduct === void 0 ? void 0 : targetProduct.price;
|
|
42
|
+
productInfo.base_price = targetProduct === null || targetProduct === void 0 ? void 0 : targetProduct.base_price;
|
|
43
|
+
bundle = (_bundle = bundle) === null || _bundle === void 0 ? void 0 : _bundle.map(function (n) {
|
|
44
|
+
var _targetProduct$bundle;
|
|
45
|
+
// 更新 bundle 的价格
|
|
46
|
+
var targetBundle = targetProduct === null || targetProduct === void 0 || (_targetProduct$bundle = targetProduct.bundle_group) === null || _targetProduct$bundle === void 0 ? void 0 : _targetProduct$bundle.find(function (m) {
|
|
47
|
+
return m.id === n.group_id;
|
|
48
|
+
});
|
|
49
|
+
if (targetBundle) {
|
|
50
|
+
var targetBundleItem = targetBundle.bundle_item.find(function (m) {
|
|
51
|
+
return m.id === n.id;
|
|
52
|
+
});
|
|
53
|
+
if (targetBundleItem.price_type === 'markdown') {
|
|
54
|
+
targetBundleItem.price = new Decimal(targetBundleItem.price || 0).mul(-1).toNumber();
|
|
55
|
+
}
|
|
56
|
+
if (targetBundleItem) {
|
|
57
|
+
return _objectSpread(_objectSpread({}, n), {}, {
|
|
58
|
+
price: targetBundleItem.price,
|
|
59
|
+
base_price: targetBundleItem.base_price
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return n;
|
|
64
|
+
});
|
|
65
|
+
updateCart({
|
|
66
|
+
_id: item._id,
|
|
67
|
+
product: productInfo,
|
|
68
|
+
bundle: bundle
|
|
69
|
+
});
|
|
70
|
+
case 11:
|
|
71
|
+
case "end":
|
|
72
|
+
return _context.stop();
|
|
73
|
+
}
|
|
74
|
+
}, _loop);
|
|
75
|
+
});
|
|
76
|
+
_iterator.s();
|
|
77
|
+
case 4:
|
|
78
|
+
if ((_step = _iterator.n()).done) {
|
|
79
|
+
_context2.next = 8;
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
return _context2.delegateYield(_loop(), "t0", 6);
|
|
83
|
+
case 6:
|
|
84
|
+
_context2.next = 4;
|
|
85
|
+
break;
|
|
86
|
+
case 8:
|
|
87
|
+
_context2.next = 13;
|
|
88
|
+
break;
|
|
89
|
+
case 10:
|
|
90
|
+
_context2.prev = 10;
|
|
91
|
+
_context2.t1 = _context2["catch"](1);
|
|
92
|
+
_iterator.e(_context2.t1);
|
|
93
|
+
case 13:
|
|
94
|
+
_context2.prev = 13;
|
|
95
|
+
_iterator.f();
|
|
96
|
+
return _context2.finish(13);
|
|
97
|
+
case 16:
|
|
98
|
+
case "end":
|
|
99
|
+
return _context2.stop();
|
|
100
|
+
}
|
|
101
|
+
}, _callee, null, [[1, 10, 13, 16]]);
|
|
102
|
+
}));
|
|
103
|
+
return _updateAllCartItemPrice.apply(this, arguments);
|
|
104
|
+
}
|
|
@@ -121,11 +121,11 @@ export var DateModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
121
121
|
key: "fetchResourceDates",
|
|
122
122
|
value: function () {
|
|
123
123
|
var _fetchResourceDates = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(params) {
|
|
124
|
-
var url, query, fetchUrl, _ref, start_date, end_date, resource_ids, res;
|
|
124
|
+
var url, query, _params$useCache, useCache, fetchUrl, _ref, start_date, end_date, resource_ids, res;
|
|
125
125
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
126
126
|
while (1) switch (_context3.prev = _context3.next) {
|
|
127
127
|
case 0:
|
|
128
|
-
url = params.url, query = params.query;
|
|
128
|
+
url = params.url, query = params.query, _params$useCache = params.useCache, useCache = _params$useCache === void 0 ? true : _params$useCache;
|
|
129
129
|
fetchUrl = url || '/schedule/resource/list';
|
|
130
130
|
_ref = query || {}, start_date = _ref.start_date, end_date = _ref.end_date, resource_ids = _ref.resource_ids;
|
|
131
131
|
_context3.prev = 3;
|
|
@@ -134,9 +134,9 @@ export var DateModule = /*#__PURE__*/function (_BaseModule) {
|
|
|
134
134
|
start_date: start_date,
|
|
135
135
|
end_date: end_date,
|
|
136
136
|
resource_ids: resource_ids,
|
|
137
|
-
front_end_cache_id: this.cacheId
|
|
137
|
+
front_end_cache_id: useCache && this.cacheId
|
|
138
138
|
}, {
|
|
139
|
-
useCache:
|
|
139
|
+
useCache: useCache
|
|
140
140
|
});
|
|
141
141
|
case 6:
|
|
142
142
|
res = _context3.sent;
|
|
@@ -140,7 +140,11 @@ var getDaysByRepeatWeek = function getDaysByRepeatWeek(params, isGetRange) {
|
|
|
140
140
|
for (var i = 0; i < frequency_date.length; i++) {
|
|
141
141
|
var item = frequency_date[i];
|
|
142
142
|
var _start = startTmp.day(item);
|
|
143
|
+
// 如果周结束的那一天还超过了deadline,则需要把_end置为deadline
|
|
143
144
|
var _end = _start.add(scheduleDiff, 'second');
|
|
145
|
+
if (_end.isAfter(deadline, 'day')) {
|
|
146
|
+
_end = deadline;
|
|
147
|
+
}
|
|
144
148
|
if (isGetRange) {
|
|
145
149
|
if (excludedDaysMap.has(_start.format('YYYY-MM-DD'))) {
|
|
146
150
|
startTmp = startTmp.day(1).add(frequency, 'day');
|
|
@@ -869,6 +869,8 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
|
|
|
869
869
|
startDate,
|
|
870
870
|
endDate,
|
|
871
871
|
type,
|
|
872
|
+
_params$useCache,
|
|
873
|
+
useCache,
|
|
872
874
|
tempProducts,
|
|
873
875
|
dateRange,
|
|
874
876
|
tempStartDate,
|
|
@@ -884,7 +886,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
|
|
|
884
886
|
case 0:
|
|
885
887
|
params = _args15.length > 0 && _args15[0] !== undefined ? _args15[0] : {};
|
|
886
888
|
// 开始日期如果小于今天,直接以今天当做开始日期
|
|
887
|
-
products = params.products, startDate = params.startDate, endDate = params.endDate, type = params.type; // 前端传递的 startDate,可能是今天之前的,如果 startDate 小于今天 且 endDate 小于或等于今天,需要把 startDate 置为今天
|
|
889
|
+
products = params.products, startDate = params.startDate, endDate = params.endDate, type = params.type, _params$useCache = params.useCache, useCache = _params$useCache === void 0 ? true : _params$useCache; // 前端传递的 startDate,可能是今天之前的,如果 startDate 小于今天 且 endDate 小于或等于今天,需要把 startDate 置为今天
|
|
888
890
|
if (dayjs(startDate).isBefore(dayjs(), 'day') && (dayjs(endDate).isAfter(dayjs(), 'day') || dayjs(endDate).isSame(dayjs(), 'day'))) {
|
|
889
891
|
startDate = dayjs().format('YYYY-MM-DD');
|
|
890
892
|
}
|
|
@@ -926,7 +928,8 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
|
|
|
926
928
|
resource_ids: resourceIds
|
|
927
929
|
},
|
|
928
930
|
rules: rules,
|
|
929
|
-
type: type
|
|
931
|
+
type: type,
|
|
932
|
+
useCache: useCache
|
|
930
933
|
});
|
|
931
934
|
case 15:
|
|
932
935
|
res = _context15.sent;
|
|
@@ -2648,6 +2651,21 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
|
|
|
2648
2651
|
_this13.store.cart.removeItem(n._id);
|
|
2649
2652
|
});
|
|
2650
2653
|
}
|
|
2654
|
+
// 如果 date.startTime 和 dateRange 里的 startTime 不一样,需要修正 dateRange
|
|
2655
|
+
var dateRange = this.store.date.getDateRange();
|
|
2656
|
+
if (dateRange !== null && dateRange !== void 0 && dateRange[0] && !dayjs(dateRange[0].date).isSame(dayjs(date.startTime), 'day')) {
|
|
2657
|
+
this.setDateRange([{
|
|
2658
|
+
date: dayjs(date.startTime).format('YYYY-MM-DD'),
|
|
2659
|
+
status: 'available',
|
|
2660
|
+
week: '',
|
|
2661
|
+
weekNum: 0
|
|
2662
|
+
}, {
|
|
2663
|
+
date: dayjs(date.endTime).format('YYYY-MM-DD'),
|
|
2664
|
+
status: 'available',
|
|
2665
|
+
week: '',
|
|
2666
|
+
weekNum: 0
|
|
2667
|
+
}]);
|
|
2668
|
+
}
|
|
2651
2669
|
}
|
|
2652
2670
|
}
|
|
2653
2671
|
}, {
|
|
@@ -3137,7 +3155,7 @@ export var BookingByStepImpl = /*#__PURE__*/function (_BaseModule) {
|
|
|
3137
3155
|
});
|
|
3138
3156
|
|
|
3139
3157
|
// 如果 firstAvailableDate 距离 startDate 大于 14 天了,则后面就不需要再找了,也是一种性能保护
|
|
3140
|
-
if (!(firstAvailableDate && dayjs(currentDate).diff(dayjs(startDate), 'day') >
|
|
3158
|
+
if (!(firstAvailableDate && dayjs(currentDate).diff(dayjs(startDate), 'day') > 31)) {
|
|
3141
3159
|
_context31.next = 9;
|
|
3142
3160
|
break;
|
|
3143
3161
|
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { Product } from "../../Product";
|
|
2
|
+
import { CartItem, IUpdateItemParams } from "../types";
|
|
3
|
+
export declare function updateAllCartItemPrice(cartItems: CartItem[], priceData: any, getProduct: (id: number) => Promise<Product | undefined>, updateCart: (item: IUpdateItemParams) => void): Promise<void>;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/modules/Cart/utils/changePrice.ts
|
|
30
|
+
var changePrice_exports = {};
|
|
31
|
+
__export(changePrice_exports, {
|
|
32
|
+
updateAllCartItemPrice: () => updateAllCartItemPrice
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(changePrice_exports);
|
|
35
|
+
var import_decimal = __toESM(require("decimal.js"));
|
|
36
|
+
async function updateAllCartItemPrice(cartItems, priceData, getProduct, updateCart) {
|
|
37
|
+
for (const item of cartItems) {
|
|
38
|
+
const targetProduct = priceData.find((n) => n.id === item.id);
|
|
39
|
+
const cartProduct = await getProduct(
|
|
40
|
+
item.id
|
|
41
|
+
);
|
|
42
|
+
const productInfo = cartProduct == null ? void 0 : cartProduct.getData();
|
|
43
|
+
let bundle = item._bundleOrigin;
|
|
44
|
+
productInfo.price = targetProduct == null ? void 0 : targetProduct.price;
|
|
45
|
+
productInfo.base_price = targetProduct == null ? void 0 : targetProduct.base_price;
|
|
46
|
+
bundle = bundle == null ? void 0 : bundle.map((n) => {
|
|
47
|
+
var _a;
|
|
48
|
+
const targetBundle = (_a = targetProduct == null ? void 0 : targetProduct.bundle_group) == null ? void 0 : _a.find(
|
|
49
|
+
(m) => m.id === n.group_id
|
|
50
|
+
);
|
|
51
|
+
if (targetBundle) {
|
|
52
|
+
const targetBundleItem = targetBundle.bundle_item.find(
|
|
53
|
+
(m) => m.id === n.id
|
|
54
|
+
);
|
|
55
|
+
if (targetBundleItem.price_type === "markdown") {
|
|
56
|
+
targetBundleItem.price = new import_decimal.default(targetBundleItem.price || 0).mul(-1).toNumber();
|
|
57
|
+
}
|
|
58
|
+
if (targetBundleItem) {
|
|
59
|
+
return {
|
|
60
|
+
...n,
|
|
61
|
+
price: targetBundleItem.price,
|
|
62
|
+
base_price: targetBundleItem.base_price
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return n;
|
|
67
|
+
});
|
|
68
|
+
updateCart({
|
|
69
|
+
_id: item._id,
|
|
70
|
+
product: productInfo,
|
|
71
|
+
bundle
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
76
|
+
0 && (module.exports = {
|
|
77
|
+
updateAllCartItemPrice
|
|
78
|
+
});
|
|
@@ -69,7 +69,7 @@ var DateModule = class extends import_BaseModule.BaseModule {
|
|
|
69
69
|
this.store.dateList = dateList;
|
|
70
70
|
}
|
|
71
71
|
async fetchResourceDates(params) {
|
|
72
|
-
const { url, query } = params;
|
|
72
|
+
const { url, query, useCache = true } = params;
|
|
73
73
|
const fetchUrl = url || "/schedule/resource/list";
|
|
74
74
|
const { start_date, end_date, resource_ids } = query || {};
|
|
75
75
|
try {
|
|
@@ -77,9 +77,9 @@ var DateModule = class extends import_BaseModule.BaseModule {
|
|
|
77
77
|
start_date,
|
|
78
78
|
end_date,
|
|
79
79
|
resource_ids,
|
|
80
|
-
front_end_cache_id: this.cacheId
|
|
80
|
+
front_end_cache_id: useCache && this.cacheId
|
|
81
81
|
}, {
|
|
82
|
-
useCache
|
|
82
|
+
useCache
|
|
83
83
|
});
|
|
84
84
|
return res;
|
|
85
85
|
} catch (error) {
|
|
@@ -140,7 +140,10 @@ var getDaysByRepeatWeek = (params, isGetRange) => {
|
|
|
140
140
|
for (let i = 0; i < frequency_date.length; i++) {
|
|
141
141
|
const item = frequency_date[i];
|
|
142
142
|
const _start = startTmp.day(item);
|
|
143
|
-
|
|
143
|
+
let _end = _start.add(scheduleDiff, "second");
|
|
144
|
+
if (_end.isAfter(deadline, "day")) {
|
|
145
|
+
_end = deadline;
|
|
146
|
+
}
|
|
144
147
|
if (isGetRange) {
|
|
145
148
|
if (excludedDaysMap.has(_start.format("YYYY-MM-DD"))) {
|
|
146
149
|
startTmp = startTmp.day(1).add(frequency, "day");
|
|
@@ -469,7 +469,7 @@ var BookingByStepImpl = class extends import_BaseModule.BaseModule {
|
|
|
469
469
|
// 获取商品/服务的可用日期
|
|
470
470
|
async getAvailableDate(params = {}) {
|
|
471
471
|
var _a, _b, _c;
|
|
472
|
-
let { products, startDate, endDate, type } = params;
|
|
472
|
+
let { products, startDate, endDate, type, useCache = true } = params;
|
|
473
473
|
if ((0, import_dayjs.default)(startDate).isBefore((0, import_dayjs.default)(), "day") && ((0, import_dayjs.default)(endDate).isAfter((0, import_dayjs.default)(), "day") || (0, import_dayjs.default)(endDate).isSame((0, import_dayjs.default)(), "day"))) {
|
|
474
474
|
startDate = (0, import_dayjs.default)().format("YYYY-MM-DD");
|
|
475
475
|
}
|
|
@@ -506,7 +506,8 @@ var BookingByStepImpl = class extends import_BaseModule.BaseModule {
|
|
|
506
506
|
resource_ids: resourceIds
|
|
507
507
|
},
|
|
508
508
|
rules,
|
|
509
|
-
type
|
|
509
|
+
type,
|
|
510
|
+
useCache
|
|
510
511
|
});
|
|
511
512
|
return res;
|
|
512
513
|
}
|
|
@@ -1847,6 +1848,13 @@ var BookingByStepImpl = class extends import_BaseModule.BaseModule {
|
|
|
1847
1848
|
this.store.cart.removeItem(n._id);
|
|
1848
1849
|
});
|
|
1849
1850
|
}
|
|
1851
|
+
const dateRange = this.store.date.getDateRange();
|
|
1852
|
+
if ((dateRange == null ? void 0 : dateRange[0]) && !(0, import_dayjs.default)(dateRange[0].date).isSame((0, import_dayjs.default)(date.startTime), "day")) {
|
|
1853
|
+
this.setDateRange([
|
|
1854
|
+
{ date: (0, import_dayjs.default)(date.startTime).format("YYYY-MM-DD"), status: "available", week: "", weekNum: 0 },
|
|
1855
|
+
{ date: (0, import_dayjs.default)(date.endTime).format("YYYY-MM-DD"), status: "available", week: "", weekNum: 0 }
|
|
1856
|
+
]);
|
|
1857
|
+
}
|
|
1850
1858
|
}
|
|
1851
1859
|
}
|
|
1852
1860
|
setOtherData(key, value) {
|
|
@@ -2211,7 +2219,7 @@ var BookingByStepImpl = class extends import_BaseModule.BaseModule {
|
|
|
2211
2219
|
weekNum: (0, import_dayjs.default)(currentDate).day(),
|
|
2212
2220
|
status
|
|
2213
2221
|
});
|
|
2214
|
-
if (firstAvailableDate && (0, import_dayjs.default)(currentDate).diff((0, import_dayjs.default)(startDate), "day") >
|
|
2222
|
+
if (firstAvailableDate && (0, import_dayjs.default)(currentDate).diff((0, import_dayjs.default)(startDate), "day") > 31) {
|
|
2215
2223
|
break;
|
|
2216
2224
|
}
|
|
2217
2225
|
currentDate = (0, import_dayjs.default)(currentDate).add(1, "day");
|