@pisell/private-materials 3.0.49 → 3.0.50

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.
@@ -42,36 +42,66 @@ var import_forms = __toESM(require("../../forms/forms"));
42
42
  var import_format = require("../../forms/format");
43
43
  var import_utils2 = require("../../utils");
44
44
  var import_useEngineContext = __toESM(require("../../../../hooks/useEngineContext"));
45
+ var defaultParams = {
46
+ skip: 1,
47
+ num: 100,
48
+ total: 0,
49
+ keyword: ""
50
+ };
45
51
  var Pet = () => {
46
- var _a, _b, _c, _d, _e, _f, _g, _h;
52
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m;
53
+ const [loadLoading, setLoadLoading] = (0, import_react.useState)(false);
47
54
  const [loading, setLoading] = (0, import_react.useState)(false);
48
55
  const { state, dispatch } = (0, import_react.useContext)(import_model.Context);
49
56
  const [valueLoading, setValueLoading] = (0, import_react.useState)(false);
50
57
  const context = (0, import_useEngineContext.default)();
51
58
  const { isTerminal } = ((_a = context.appHelper) == null ? void 0 : _a.utils) || {};
52
- const params = (0, import_react.useMemo)(() => {
59
+ const [params, setParams] = (0, import_react.useState)(defaultParams);
60
+ const boardParams = (0, import_react.useMemo)(() => {
53
61
  var _a2, _b2, _c2;
54
62
  return ((_c2 = (_b2 = (_a2 = state == null ? void 0 : state.bookingConfig) == null ? void 0 : _a2.config) == null ? void 0 : _b2.basic) == null ? void 0 : _c2.appointment_subject) || {};
55
63
  }, [(_d = (_c = (_b = state == null ? void 0 : state.bookingConfig) == null ? void 0 : _b.config) == null ? void 0 : _c.basic) == null ? void 0 : _d.appointment_subject]);
56
64
  const petForm = (0, import_react.useMemo)(() => {
57
- return (state.pet.formData || [])[0];
58
- }, [state.pet.formData]);
59
- const getFormData = async ({ formData }) => {
65
+ var _a2;
66
+ let _holder = (_a2 = state.bookingConfig) == null ? void 0 : _a2.holder;
67
+ if (!_holder) {
68
+ return null;
69
+ }
70
+ return {
71
+ ..._holder,
72
+ ..._holder == null ? void 0 : _holder.form,
73
+ options: [],
74
+ form_id: _holder.form.id,
75
+ field: _holder.form.form_field,
76
+ relation_type: "appointment_booking",
77
+ form_record: []
78
+ };
79
+ }, [(_e = state.bookingConfig) == null ? void 0 : _e.holder]);
80
+ const getFormData = async ({ formData }, _params = defaultParams) => {
60
81
  var _a2, _b2, _c2, _d2;
61
82
  setLoading(true);
62
83
  let _list = [];
63
84
  const noClient = formData.data_range === "customer" && (0, import_utils2.isWalkIn)((_b2 = (_a2 = state.client) == null ? void 0 : _a2.value) == null ? void 0 : _b2.id);
64
85
  if (!noClient) {
65
- let _params = {
66
- form_id: params.form_id,
67
- skip: 1,
68
- num: 999
86
+ let _values = {
87
+ form_id: boardParams.form_id,
88
+ ..._params
69
89
  };
70
90
  if (formData.data_range === "customer") {
71
- _params.customer_id = (_d2 = (_c2 = state.client) == null ? void 0 : _c2.value) == null ? void 0 : _d2.id;
91
+ _values.customer_id = (_d2 = (_c2 = state.client) == null ? void 0 : _c2.value) == null ? void 0 : _d2.id;
92
+ }
93
+ const data = await state.apis.getPetsData(_values);
94
+ _list = [...formData.options];
95
+ if (_params.skip === 1) {
96
+ _list = (data == null ? void 0 : data.list) || [];
97
+ } else {
98
+ _list = _list.concat((data == null ? void 0 : data.list) || []);
72
99
  }
73
- const data = await state.apis.getPetsData(_params);
74
- _list = (data == null ? void 0 : data.list) || [];
100
+ setParams({
101
+ ...params,
102
+ ..._params,
103
+ total: (data == null ? void 0 : data.count) || 0
104
+ });
75
105
  }
76
106
  dispatch({
77
107
  type: "setPet",
@@ -88,36 +118,42 @@ var Pet = () => {
88
118
  setLoading(false);
89
119
  };
90
120
  const getForms = async (isUpdateValue = true) => {
91
- var _a2, _b2;
121
+ var _a2, _b2, _c2, _d2, _e2, _f2, _g2;
92
122
  let values = {
93
123
  ...state.pet.value
94
124
  };
95
- let isSetValue = isUpdateValue && values[params == null ? void 0 : params.form_id] === void 0;
125
+ let isSetValue = isUpdateValue && values[boardParams == null ? void 0 : boardParams.form_id] === void 0 && ((_c2 = (_b2 = (_a2 = state.bookingDetail) == null ? void 0 : _a2.holder) == null ? void 0 : _b2.form_record) == null ? void 0 : _c2.length);
96
126
  if (isSetValue) {
97
127
  setValueLoading(true);
98
128
  }
99
129
  try {
100
- let formData = await state.apis.getForms({
101
- relation_type: state.renderType === "eventBooking" ? "event_booking_v2" : "appointment_booking",
102
- relation_id: ((_b2 = (_a2 = state.bookingDetail) == null ? void 0 : _a2.bookings) == null ? void 0 : _b2.id) || 0
103
- // _config: { useCache: true },
104
- });
105
- formData = (formData || []).filter(
106
- (d) => d.form_id === (params == null ? void 0 : params.form_id)
107
- )[0];
130
+ let formData = petForm;
131
+ if (state.renderType === "eventBooking") {
132
+ formData = await state.apis.getForms({
133
+ relation_type: "event_booking_v2",
134
+ relation_id: ((_e2 = (_d2 = state.bookingDetail) == null ? void 0 : _d2.bookings) == null ? void 0 : _e2.id) || 0
135
+ // _config: { useCache: true },
136
+ });
137
+ formData = (formData || []).filter(
138
+ (d) => d.form_id === (params == null ? void 0 : params.form_id)
139
+ )[0];
140
+ formData = {
141
+ ...formData,
142
+ ...formData.form,
143
+ form_id: formData.form.id,
144
+ options: [],
145
+ type: formData.type
146
+ };
147
+ }
108
148
  let payload = {
109
- formData: [
110
- {
111
- ...formData,
112
- ...formData.form,
113
- form_id: formData.form.id,
114
- options: [],
115
- type: formData.type
116
- }
117
- ]
149
+ formData: [formData]
118
150
  };
119
151
  if (isSetValue) {
120
- values[params == null ? void 0 : params.form_id] = formData.form_record;
152
+ let records = await state.apis.getFormRecords({
153
+ form_record_ids: (_g2 = (_f2 = state.bookingDetail) == null ? void 0 : _f2.holder) == null ? void 0 : _g2.form_record
154
+ });
155
+ console.log("records", records);
156
+ values[boardParams == null ? void 0 : boardParams.form_id] = records;
121
157
  payload.value = values;
122
158
  setValueLoading(false);
123
159
  }
@@ -163,7 +199,7 @@ var Pet = () => {
163
199
  [petForm.form_id]: cur
164
200
  }
165
201
  });
166
- getForms();
202
+ addCallback();
167
203
  }
168
204
  });
169
205
  };
@@ -180,7 +216,7 @@ var Pet = () => {
180
216
  type: "pisell1.editCustomFormRecord",
181
217
  data: _data,
182
218
  callback: () => {
183
- getForms();
219
+ addCallback();
184
220
  }
185
221
  });
186
222
  };
@@ -200,34 +236,67 @@ var Pet = () => {
200
236
  clientId: (_c2 = (_b2 = state.client) == null ? void 0 : _b2.value) == null ? void 0 : _c2.id,
201
237
  forms: ((_d2 = state.pet) == null ? void 0 : _d2.formData) || []
202
238
  });
203
- dispatch({
204
- type: "setPet",
205
- payload: { value: changeFormValuesData }
239
+ setTimeout(() => {
240
+ dispatch({
241
+ type: "setPet",
242
+ payload: { value: changeFormValuesData }
243
+ });
206
244
  });
207
- }, [(_e = state.client.value) == null ? void 0 : _e.id]);
208
- (0, import_react.useEffect)(() => {
245
+ }, [(_f = state.client.value) == null ? void 0 : _f.id]);
246
+ const handleUpdateForm = () => {
209
247
  if (state.bookingId) {
210
248
  if (!state.bookingDetail) {
211
249
  return;
212
250
  }
213
251
  }
214
- if (params.form_id && params.type === "form") {
252
+ if (boardParams.form_id && boardParams.type === "form") {
215
253
  getForms(true);
216
254
  }
255
+ };
256
+ (0, import_react.useEffect)(() => {
257
+ setTimeout(() => {
258
+ handleUpdateForm();
259
+ }, 10);
217
260
  }, [
218
261
  state.bookingId,
219
262
  state.bookingDetail,
220
- params.form_id,
221
- params.type,
222
- (_g = (_f = state.client) == null ? void 0 : _f.value) == null ? void 0 : _g.id
263
+ boardParams.form_id,
264
+ boardParams.type,
265
+ (_h = (_g = state.client) == null ? void 0 : _g.value) == null ? void 0 : _h.id,
266
+ state.renderType,
267
+ petForm
223
268
  ]);
224
- const addCallback = () => {
269
+ const addCallback = (_params) => {
225
270
  var _a2, _b2;
226
271
  let _formData = (_b2 = (_a2 = state.pet) == null ? void 0 : _a2.formData) == null ? void 0 : _b2[0];
227
- if ((_formData == null ? void 0 : _formData.type) === "multiple" || (_formData == null ? void 0 : _formData.type) === "single") {
228
- getFormData({ formData: _formData });
229
- }
272
+ getFormData({ formData: _formData }, _params);
273
+ };
274
+ const searchChange = (keyword) => {
275
+ let _params = {
276
+ ...params,
277
+ skip: 1,
278
+ keyword
279
+ };
280
+ addCallback(_params);
230
281
  };
282
+ const loadMore = (0, import_react.useMemo)(() => {
283
+ var _a2, _b2, _c2, _d2;
284
+ const show = ((_d2 = (_c2 = (_b2 = (_a2 = state.pet) == null ? void 0 : _a2.formData) == null ? void 0 : _b2[0]) == null ? void 0 : _c2.options) == null ? void 0 : _d2.length) < params.total || 0;
285
+ return show ? /* @__PURE__ */ import_react.default.createElement("div", { className: "", style: { textAlign: "center", padding: "16px 0" } }, /* @__PURE__ */ import_react.default.createElement(
286
+ import_antd.Button,
287
+ {
288
+ loading: loadLoading,
289
+ onClick: () => {
290
+ let _params = {
291
+ ...params,
292
+ skip: params.skip + 1
293
+ };
294
+ addCallback(_params);
295
+ }
296
+ },
297
+ import_utils.locales.getText("pisell2.text.load-more")
298
+ )) : null;
299
+ }, [loadLoading, params, (_l = (_k = (_j = (_i = state.pet) == null ? void 0 : _i.formData) == null ? void 0 : _j[0]) == null ? void 0 : _k.options) == null ? void 0 : _l.length]);
231
300
  return /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-lowcode__booking-pet-wraps" }, /* @__PURE__ */ import_react.default.createElement(import_antd.Skeleton, { loading: valueLoading, active: true, round: true }, /* @__PURE__ */ import_react.default.createElement(
232
301
  import_forms.default,
233
302
  {
@@ -242,13 +311,22 @@ var Pet = () => {
242
311
  modalOpen: state.modalOpen,
243
312
  value: state.pet.value,
244
313
  onChange: onValueChange,
245
- client: (_h = state.client) == null ? void 0 : _h.value,
314
+ client: (_m = state.client) == null ? void 0 : _m.value,
246
315
  customSelectProps: {
247
316
  loading,
248
317
  handleViewItem,
249
318
  virtualListHeight: window.innerHeight - 213 - 57 - 16,
250
319
  disabled: state.disabledEdit,
251
- autoFocus: !state.isTerminal
320
+ autoFocus: !state.isTerminal,
321
+ closeCallback: () => {
322
+ searchChange("");
323
+ },
324
+ searchChange,
325
+ searchValue: params.search,
326
+ loadMore,
327
+ filterItem: () => {
328
+ return true;
329
+ }
252
330
  },
253
331
  optionRender: (item) => {
254
332
  return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/private-materials",
3
- "version": "3.0.49",
3
+ "version": "3.0.50",
4
4
  "main": "./lib/index.js",
5
5
  "module": "./es/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -58,9 +58,9 @@
58
58
  "ahooks": "^3.7.6",
59
59
  "react-infinite-scroll-component": "^6.1.0",
60
60
  "rc-virtual-list": "^3.11.3",
61
- "@pisell/utils": "1.0.24",
61
+ "@pisell/date-picker": "1.0.69",
62
62
  "@pisell/icon": "0.0.8",
63
- "@pisell/date-picker": "1.0.69"
63
+ "@pisell/utils": "1.0.24"
64
64
  },
65
65
  "peerDependencies": {
66
66
  "react": "^18.0.0",