@pisell/private-materials 3.0.174 → 3.0.176

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.
@@ -12,7 +12,7 @@ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symb
12
12
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
13
13
  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; }
14
14
  import React from 'react';
15
- import { getServeStartTime, getDuration, getEndDate, flexibleObj, sliceDayIntoFiveMinutes, getDiscountTime, getCacheParams } from "../../../utils";
15
+ import { getServeStartTime, getDuration, getEndDate, flexibleObj, sliceDayIntoFiveMinutes, getDiscountTime, getServiceTimes, getCacheParams } from "../../../utils";
16
16
  import { getServiceStartTimeAndEndTime, formatResource, getErrorList } from "../../utilsByBooking";
17
17
  import dayjs from 'dayjs';
18
18
  import { locales } from '@pisell/utils';
@@ -32,8 +32,9 @@ export var getUsableTime = function getUsableTime(cacheItem) {
32
32
 
33
33
  // 取最小的时间
34
34
  var minEndAt = items.reduce(function (pre, event) {
35
- var endAt = dayjs(event.end_at);
36
- return endAt.isBefore(pre.end_at) ? event : pre;
35
+ var _event$_extend, _event$_extend$usable, _pre$_extend, _pre$_extend$usableTi;
36
+ var endAt = dayjs((_event$_extend = event._extend) === null || _event$_extend === void 0 ? void 0 : (_event$_extend$usable = _event$_extend.usableTime) === null || _event$_extend$usable === void 0 ? void 0 : _event$_extend$usable.end_at);
37
+ return endAt.isBefore((_pre$_extend = pre._extend) === null || _pre$_extend === void 0 ? void 0 : (_pre$_extend$usableTi = _pre$_extend.usableTime) === null || _pre$_extend$usableTi === void 0 ? void 0 : _pre$_extend$usableTi.end_at) ? event : pre;
37
38
  }, items[0]);
38
39
  return minEndAt;
39
40
  } catch (err) {
@@ -473,6 +474,14 @@ export var getProductExtend = function getProductExtend(_ref8) {
473
474
  });
474
475
  if (getDuration(_cacheItem === null || _cacheItem === void 0 ? void 0 : _cacheItem.duration) === 'flexible') {
475
476
  _cacheItem._extend.duration = _cacheItem._data.timeObj.durationSlicesBasedOnTime[0].value;
477
+
478
+ // 计算服务的开始和结束时间
479
+ var _getServiceTimes = getServiceTimes({
480
+ _extend: _cacheItem._extend
481
+ }),
482
+ startDate = _getServiceTimes.startDate,
483
+ endDate = _getServiceTimes.endDate;
484
+ _cacheItem._extend.endDate = endDate;
476
485
  }
477
486
  }
478
487
 
@@ -51,11 +51,11 @@ export var getAddTimeSplits = function getAddTimeSplits(product, cacheItem) {
51
51
 
52
52
  // 灵活时长
53
53
  if (add_time.additional_time_options === 'unlimited') {
54
- var _getUsableTime;
54
+ var _getUsableTime, _getUsableTime$_exten, _getUsableTime$_exten2;
55
55
  // 1. 当前服务的时长和结束时间
56
56
  // 2. 当前资源的结束时间
57
57
  // 3. 当前店铺的结束时间
58
- var maxEndDate = getEndDate(cacheItem._extend.startDate, 'flexible', (_getUsableTime = getUsableTime(cacheItem)) === null || _getUsableTime === void 0 ? void 0 : _getUsableTime.end_at);
58
+ var maxEndDate = getEndDate(cacheItem._extend.startDate, 'flexible', (_getUsableTime = getUsableTime(cacheItem)) === null || _getUsableTime === void 0 ? void 0 : (_getUsableTime$_exten = _getUsableTime._extend) === null || _getUsableTime$_exten === void 0 ? void 0 : (_getUsableTime$_exten2 = _getUsableTime$_exten.usableTime) === null || _getUsableTime$_exten2 === void 0 ? void 0 : _getUsableTime$_exten2.end_at);
59
59
  var _value = maxEndDate.diff(cacheItem._extend.endDate, 'minute');
60
60
  // 店铺营业时间大于当前服务的结束时间, 则取店铺营业时间, 否则就不可选
61
61
  if (_value > 0) {
@@ -414,6 +414,7 @@ export var getEndDate = function getEndDate(startDate, duration, endDate) {
414
414
  if (!endDate) {
415
415
  return openingDate;
416
416
  }
417
+ endDate = dayjs(endDate);
417
418
 
418
419
  // 如果最佳time时间 大于 店铺营业结束时间, 则 取店铺营业时间, 否则为time的结束时间
419
420
  if (endDate.isAfter(openingDate)) {
@@ -57,8 +57,9 @@ var getUsableTime = (cacheItem) => {
57
57
  );
58
58
  }
59
59
  const minEndAt = items.reduce((pre, event) => {
60
- const endAt = (0, import_dayjs.default)(event.end_at);
61
- return endAt.isBefore(pre.end_at) ? event : pre;
60
+ var _a, _b, _c, _d;
61
+ const endAt = (0, import_dayjs.default)((_b = (_a = event._extend) == null ? void 0 : _a.usableTime) == null ? void 0 : _b.end_at);
62
+ return endAt.isBefore((_d = (_c = pre._extend) == null ? void 0 : _c.usableTime) == null ? void 0 : _d.end_at) ? event : pre;
62
63
  }, items[0]);
63
64
  return minEndAt;
64
65
  } catch (err) {
@@ -333,6 +334,10 @@ var getProductExtend = ({ cacheItem, state }) => {
333
334
  });
334
335
  if ((0, import_utils.getDuration)(_cacheItem == null ? void 0 : _cacheItem.duration) === "flexible") {
335
336
  _cacheItem._extend.duration = _cacheItem._data.timeObj.durationSlicesBasedOnTime[0].value;
337
+ const { startDate, endDate } = (0, import_utils.getServiceTimes)({
338
+ _extend: _cacheItem._extend
339
+ });
340
+ _cacheItem._extend.endDate = endDate;
336
341
  }
337
342
  }
338
343
  _cacheItem.autoClose = getIsAutoClose(_cacheItem);
@@ -40,7 +40,7 @@ var import_utils2 = require("@pisell/utils");
40
40
  var import_lodash = require("lodash");
41
41
  var import_utils3 = require("../addService/utils");
42
42
  var getAddTimeSplits = (product, cacheItem) => {
43
- var _a;
43
+ var _a, _b, _c;
44
44
  const { add_time = {
45
45
  calculate_type: "select_quantity",
46
46
  // 最大时长
@@ -53,7 +53,7 @@ var getAddTimeSplits = (product, cacheItem) => {
53
53
  unit_duration: 30
54
54
  }, price = 0 } = product;
55
55
  if (add_time.additional_time_options === "unlimited") {
56
- let maxEndDate = (0, import_utils.getEndDate)(cacheItem._extend.startDate, "flexible", (_a = (0, import_utils3.getUsableTime)(cacheItem)) == null ? void 0 : _a.end_at);
56
+ let maxEndDate = (0, import_utils.getEndDate)(cacheItem._extend.startDate, "flexible", (_c = (_b = (_a = (0, import_utils3.getUsableTime)(cacheItem)) == null ? void 0 : _a._extend) == null ? void 0 : _b.usableTime) == null ? void 0 : _c.end_at);
57
57
  let _value = maxEndDate.diff(cacheItem._extend.endDate, "minute");
58
58
  if (_value > 0) {
59
59
  return [
@@ -350,6 +350,7 @@ var getEndDate = (startDate, duration, endDate) => {
350
350
  if (!endDate) {
351
351
  return openingDate;
352
352
  }
353
+ endDate = (0, import_dayjs.default)(endDate);
353
354
  if (endDate.isAfter(openingDate)) {
354
355
  return openingDate;
355
356
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/private-materials",
3
- "version": "3.0.174",
3
+ "version": "3.0.176",
4
4
  "main": "./lib/index.js",
5
5
  "module": "./es/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -59,10 +59,10 @@
59
59
  "react-infinite-scroll-component": "^6.1.0",
60
60
  "rc-virtual-list": "^3.11.3",
61
61
  "decimal.js": "^10.4.3",
62
- "@pisell/utils": "1.0.42",
62
+ "@pisell/icon": "0.0.11",
63
63
  "@pisell/materials": "3.0.51",
64
64
  "@pisell/date-picker": "1.0.100",
65
- "@pisell/icon": "0.0.11"
65
+ "@pisell/utils": "1.0.42"
66
66
  },
67
67
  "peerDependencies": {
68
68
  "react": "^18.0.0",