kmkf-work-order-service-component 0.4.0-alpha.8 → 0.4.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.
Files changed (37) hide show
  1. package/dist/esm/FormRender/index.d.ts +1 -0
  2. package/dist/esm/FormRender/index.js +84 -28
  3. package/dist/esm/SingleShopWorkOrder/components/Card/index.less +1 -0
  4. package/dist/esm/WorkOrder/components/CustomizeWorkOrderList/components/CustomizeWorkOrderCard/index.js +55 -22
  5. package/dist/esm/WorkOrder/components/CustomizeWorkOrderList/components/CustomizeWorkOrderCard/index.less +3 -2
  6. package/dist/esm/WorkOrder/components/CustomizeWorkOrderList/index.js +93 -41
  7. package/dist/esm/WorkOrder/components/CustomizeWorkOrderList/index.less +17 -5
  8. package/dist/esm/WorkOrder/components/PaymentWorkOrderList/components/PaymentWorkOrderCard/index.js +4 -0
  9. package/dist/esm/WorkOrder/components/PaymentWorkOrderList/components/PaymentWorkOrderCard/index.less +1 -0
  10. package/dist/esm/WorkOrder/components/PaymentWorkOrderList/index.js +164 -72
  11. package/dist/esm/WorkOrder/components/PaymentWorkOrderList/index.less +0 -2
  12. package/dist/esm/WorkOrder/components/Widget/basic/Checkbox/index.js +15 -8
  13. package/dist/esm/WorkOrder/components/Widget/basic/CommonDataTime/index.d.ts +10 -0
  14. package/dist/esm/WorkOrder/components/Widget/basic/CommonDataTime/index.js +90 -0
  15. package/dist/esm/WorkOrder/components/Widget/basic/Picture/index.js +3 -3
  16. package/dist/esm/WorkOrder/components/Widget/basic/Radio/index.js +1 -1
  17. package/dist/esm/WorkOrder/components/Widget/common/formItemWrap.js +2 -2
  18. package/dist/esm/WorkOrder/components/Widget/electricity/ELogistics/index.js +2 -2
  19. package/dist/esm/WorkOrder/components/Widget/electricity/ERemark/index.js +11 -5
  20. package/dist/esm/WorkOrder/components/Widget/electricity/Express/index.js +1 -1
  21. package/dist/esm/WorkOrder/components/Widget/index.d.ts +2 -1
  22. package/dist/esm/WorkOrder/components/Widget/index.js +10 -0
  23. package/dist/esm/WorkOrder/index.d.ts +1 -0
  24. package/dist/esm/WorkOrder/index.js +16 -11
  25. package/dist/esm/WorkOrder/index.less +5 -3
  26. package/dist/esm/assets/flag/trade-icon-flag-0.png +0 -0
  27. package/dist/esm/assets/flag/trade-icon-flag-1.png +0 -0
  28. package/dist/esm/assets/flag/trade-icon-flag-2.png +0 -0
  29. package/dist/esm/assets/flag/trade-icon-flag-3.png +0 -0
  30. package/dist/esm/assets/flag/trade-icon-flag-4.png +0 -0
  31. package/dist/esm/assets/flag/trade-icon-flag-5.png +0 -0
  32. package/dist/esm/common/utils/tools.d.ts +2 -1
  33. package/dist/esm/common/utils/tools.js +58 -24
  34. package/dist/esm/model/customizeWorkOrder/index.js +1 -1
  35. package/dist/esm/model/workOrder.d.ts +1 -0
  36. package/dist/esm/model/workOrder.js +20 -29
  37. package/package.json +2 -2
@@ -19,6 +19,7 @@ declare type FormRenderProps = {
19
19
  platform?: string;
20
20
  templateList?: Option[];
21
21
  formProps?: FormProps;
22
+ isShowShopList: boolean;
22
23
  onTemplateChange?: (p: string) => any;
23
24
  onFormSubmitSuccess?: <T>(p: T) => void;
24
25
  };
@@ -38,6 +38,8 @@ import zhCN from 'antd/es/locale/zh_CN';
38
38
  import { get, find, some, set, last } from 'lodash';
39
39
  import 'moment/locale/zh-cn';
40
40
  import { calcWorkOrderList, submitDataTransOldFormat, orderBack, getReplaceWarnValues, COMPONENT_MAP_NAME } from "../common/utils/tools";
41
+ import express from "../common/utils/express";
42
+ import formatAddrData from "../common/utils/formatAddrData";
41
43
  import { queryTemplateDetail, addWorkOrder, queryWorkOrderDetail, updateWorkOrder, replaceCheck } from "../model/servers/api";
42
44
  import { getPlatList } from "../model/customizeWorkOrder/api";
43
45
  import { factory } from "../WorkOrder/components/Widget";
@@ -91,6 +93,7 @@ var FormRender = function FormRender(props, ref) {
91
93
  templateList = props.templateList,
92
94
  onFormSubmitSuccess = props.onFormSubmitSuccess,
93
95
  onTemplateChange = props.onTemplateChange,
96
+ isShowShopList = props.isShowShopList,
94
97
  _props$formProps = props.formProps,
95
98
  formProps = _props$formProps === void 0 ? {} : _props$formProps;
96
99
 
@@ -133,15 +136,18 @@ var FormRender = function FormRender(props, ref) {
133
136
  setPlatIcon = _useState14[1];
134
137
 
135
138
  useEffect(function () {
136
- if (!currentShopId) {
139
+ express.initData();
140
+ formatAddrData.initData();
141
+ }, []);
142
+ useEffect(function () {
143
+ setShopId(currentShopId);
144
+
145
+ if (isShowShopList) {
137
146
  getPlatList().then(function (list) {
138
147
  return setPlatIcon(list);
139
148
  });
140
149
  }
141
- }, [currentShopId]);
142
- useEffect(function () {
143
- setShopId(currentShopId);
144
- }, [currentShopId]);
150
+ }, [currentShopId, isShowShopList]);
145
151
 
146
152
  var _Form$useForm = Form.useForm(),
147
153
  _Form$useForm2 = _slicedToArray(_Form$useForm, 1),
@@ -180,27 +186,35 @@ var FormRender = function FormRender(props, ref) {
180
186
  switch (_context.prev = _context.next) {
181
187
  case 0:
182
188
  _context.prev = 0;
183
- debugger;
184
- _context.next = 4;
189
+
190
+ if (templateIdState) {
191
+ _context.next = 3;
192
+ break;
193
+ }
194
+
195
+ return _context.abrupt("return", message.error('请先选择模板,再进行提交'));
196
+
197
+ case 3:
198
+ _context.next = 5;
185
199
  return form.validateFields();
186
200
 
187
- case 4:
201
+ case 5:
188
202
  data = _context.sent;
189
203
  console.debug('表单内容', data);
190
204
  console.debug('templateDetail内容', templateDetail);
191
205
  res = verifyHandle(data, templateDetail);
192
206
 
193
207
  if (res.success) {
194
- _context.next = 11;
208
+ _context.next = 12;
195
209
  break;
196
210
  }
197
211
 
198
212
  message.error(res.message);
199
213
  return _context.abrupt("return");
200
214
 
201
- case 11:
215
+ case 12:
202
216
  if (!workOrderId) {
203
- _context.next = 23;
217
+ _context.next = 24;
204
218
  break;
205
219
  }
206
220
 
@@ -220,10 +234,10 @@ var FormRender = function FormRender(props, ref) {
220
234
  params.workOrderUpdateKeyVos.workOrderUpdateKeySupVos = submitData.reduce(function (nex, cur) {
221
235
  return nex.concat(cur === null || cur === void 0 ? void 0 : cur.contentVoList);
222
236
  }, []);
223
- _context.next = 17;
237
+ _context.next = 18;
224
238
  return updateWorkOrder(params);
225
239
 
226
- case 17:
240
+ case 18:
227
241
  _yield$updateWorkOrde = _context.sent;
228
242
  success = _yield$updateWorkOrde.success;
229
243
  result = _yield$updateWorkOrde.data;
@@ -237,10 +251,10 @@ var FormRender = function FormRender(props, ref) {
237
251
  });
238
252
  }
239
253
 
240
- _context.next = 36;
254
+ _context.next = 37;
241
255
  break;
242
256
 
243
- case 23:
257
+ case 24:
244
258
  platformMap = {
245
259
  tb: '淘宝',
246
260
  fxg: '抖音',
@@ -248,7 +262,7 @@ var FormRender = function FormRender(props, ref) {
248
262
  pdd: '拼多多',
249
263
  jd: '京东',
250
264
  xiaozhi: '小智',
251
- pc: 'PC'
265
+ pc: '客服工作台'
252
266
  };
253
267
  _params = {
254
268
  apiName: 'addWorkOrder',
@@ -285,10 +299,10 @@ var FormRender = function FormRender(props, ref) {
285
299
  }
286
300
 
287
301
  console.debug('增加数据参数', _params);
288
- _context.next = 32;
302
+ _context.next = 33;
289
303
  return addWorkOrder(_params);
290
304
 
291
- case 32:
305
+ case 33:
292
306
  _yield$addWorkOrder = _context.sent;
293
307
  _success = _yield$addWorkOrder.success;
294
308
  _result = _yield$addWorkOrder.data;
@@ -301,13 +315,13 @@ var FormRender = function FormRender(props, ref) {
301
315
  });
302
316
  }
303
317
 
304
- case 36:
318
+ case 37:
305
319
  console.groupEnd();
306
- _context.next = 42;
320
+ _context.next = 43;
307
321
  break;
308
322
 
309
- case 39:
310
- _context.prev = 39;
323
+ case 40:
324
+ _context.prev = 40;
311
325
  _context.t0 = _context["catch"](0);
312
326
 
313
327
  // 表单校验失败错误时,将错误第一项滚动到可视区域
@@ -323,12 +337,12 @@ var FormRender = function FormRender(props, ref) {
323
337
  }, 0);
324
338
  }
325
339
 
326
- case 42:
340
+ case 43:
327
341
  case "end":
328
342
  return _context.stop();
329
343
  }
330
344
  }
331
- }, _callee, null, [[0, 39]]);
345
+ }, _callee, null, [[0, 40]]);
332
346
  }));
333
347
 
334
348
  return function asyncDoSave(_x, _x2) {
@@ -338,12 +352,12 @@ var FormRender = function FormRender(props, ref) {
338
352
 
339
353
  var handleSubmit = useCallback(function () {
340
354
  return asyncDoSave(workOrderDetail, templateDetail);
341
- }, [workOrderDetail, templateDetail]);
355
+ }, [workOrderDetail, templateDetail, shopId, workOrderId, templateIdState]);
342
356
  useImperativeHandle(ref, function () {
343
357
  return {
344
358
  save: handleSubmit
345
359
  };
346
- }, [workOrderDetail, templateDetail]); //带*参数提示清空
360
+ }, [handleSubmit]); //带*参数提示清空
347
361
 
348
362
  var filterStarValues = function filterStarValues() {
349
363
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -628,6 +642,47 @@ var FormRender = function FormRender(props, ref) {
628
642
  }(); // 切换店铺
629
643
 
630
644
 
645
+ var handleChangeShopId = function handleChangeShopId(val) {
646
+ var _templateDetail$compo3, _templateDetail$compo4;
647
+
648
+ setShopId(val); // 清空表单字段
649
+
650
+ var needClearFormFields = get(templateDetail, 'componentDtoList', []).reduce(function (cur, nxt) {
651
+ if (['ITEM_SELECT_THIRD', 'STATUS', 'ITEM_SELECT', 'ITEM_ID', 'ITEM_ENCODE'].includes(nxt === null || nxt === void 0 ? void 0 : nxt.workOrderComponentType)) {
652
+ cur.push(nxt === null || nxt === void 0 ? void 0 : nxt.uniqueKey);
653
+ }
654
+
655
+ return cur;
656
+ }, []);
657
+ form.resetFields(needClearFormFields); //切换店铺时,判断是否有订单号 有订单号自动订单返填
658
+
659
+ var allValue = form.getFieldsValue();
660
+ var tradeIdUniqueKey = templateDetail === null || templateDetail === void 0 ? void 0 : (_templateDetail$compo3 = templateDetail.componentDtoList.find(function (item) {
661
+ return item.workOrderComponentType === 'TRADE_ID_INPUT';
662
+ })) === null || _templateDetail$compo3 === void 0 ? void 0 : _templateDetail$compo3.uniqueKey;
663
+ var paymentUniqueKey = templateDetail === null || templateDetail === void 0 ? void 0 : (_templateDetail$compo4 = templateDetail.componentDtoList.find(function (item) {
664
+ return item.workOrderComponentType === 'ENTERPRISE_PAYMENT';
665
+ })) === null || _templateDetail$compo4 === void 0 ? void 0 : _templateDetail$compo4.uniqueKey;
666
+
667
+ if (tradeIdUniqueKey || paymentUniqueKey) {
668
+ var _allValue$paymentUniq;
669
+
670
+ var tradeValue = allValue[tradeIdUniqueKey];
671
+ var paymentValue = (_allValue$paymentUniq = allValue[paymentUniqueKey]) === null || _allValue$paymentUniq === void 0 ? void 0 : _allValue$paymentUniq.enterprisePaymentTid;
672
+
673
+ if (tradeValue || paymentValue) {
674
+ orderBack({
675
+ order_no: tradeValue || paymentValue,
676
+ form: form,
677
+ shopId: val,
678
+ shopList: shopList,
679
+ templateDetail: templateDetail,
680
+ callback: orderBackReplace
681
+ });
682
+ }
683
+ }
684
+ };
685
+
631
686
  var newRenderColumnItem = function newRenderColumnItem(effects) {
632
687
  return function (item) {
633
688
  if (look) {
@@ -682,6 +737,7 @@ var FormRender = function FormRender(props, ref) {
682
737
  label: "\u6A21\u677F\u540D\u79F0",
683
738
  required: true,
684
739
  children: /*#__PURE__*/_jsx(Cascader, {
740
+ popupClassName: "templateCascader",
685
741
  options: templateList,
686
742
  placeholder: "\u8BF7\u9009\u62E9\u6A21\u7248",
687
743
  showSearch: true,
@@ -689,12 +745,12 @@ var FormRender = function FormRender(props, ref) {
689
745
  onChange: handleChangeTemplateId,
690
746
  allowClear: false
691
747
  })
692
- }), !currentShopId && /*#__PURE__*/_jsx(ShopName, {
748
+ }), isShowShopList && /*#__PURE__*/_jsx(ShopName, {
693
749
  shopList: shopList,
694
750
  platIconList: platIcon,
695
751
  workOrderId: workOrderId,
696
752
  look: look,
697
- handleChangeShopId: setShopId
753
+ handleChangeShopId: handleChangeShopId
698
754
  }), finalFormItems]
699
755
  }))]
700
756
  })
@@ -117,6 +117,7 @@
117
117
 
118
118
  .itemViewRight {
119
119
  flex-grow: 1;
120
+ min-width: 0;
120
121
  color: rgba(0, 0, 0, 0.85);
121
122
  word-break: break-all;
122
123
  }
@@ -26,6 +26,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
26
26
  import React from 'react';
27
27
  import { Divider } from 'antd';
28
28
  import moment from 'moment';
29
+ import { get } from 'lodash';
29
30
  import { useAppDispatch, useAppSelector } from "../../../../../model/hooks";
30
31
  import { factory } from "../../../Widget";
31
32
  import { calcWorkOrderList, isNull } from "../../../../../common/utils/tools";
@@ -38,13 +39,26 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
38
39
  import { Fragment as _Fragment } from "react/jsx-runtime";
39
40
 
40
41
  function CustomizeWorkOrderCard(props) {
41
- var _WORK_ORDER_STATUS$it, _item$jsonMap, _item$handlerList, _item$handlerList$map;
42
+ var _item$handlerList, _item$handlerList$map;
42
43
 
43
- var item = props.item;
44
+ var item = props.item,
45
+ enabledTemplateList = props.enabledTemplateList,
46
+ singleTemplateDetails = props.singleTemplateDetails;
44
47
  var dispatch = useAppDispatch();
45
48
  var componentDtoList = useAppSelector(selectorAllTemplateList);
49
+ var filterComponentDtoList = singleTemplateDetails || componentDtoList.filter(function (i) {
50
+ return !['WORK_ORDER_ID_INPUT', // 工单ID
51
+ 'TEMPLATE_ID_INPUT', // 模板Id
52
+ 'FLOW_STATUS_SELECT', // 工单状态
53
+ 'HANDLER_INPUT', // 处理人
54
+ 'OPERATOR_INPUT', // 提交人
55
+ 'CREATED_DATETIME', // 创建时间
56
+ 'SHOP_INPUT', // 店铺
57
+ 'UPDATE_DATETIME', 'COMPLETED_DATETIME' // 完成时间
58
+ ].includes(i.workOrderComponentType);
59
+ });
46
60
 
47
- var _calcWorkOrderList = calcWorkOrderList([_objectSpread({}, item)], componentDtoList),
61
+ var _calcWorkOrderList = calcWorkOrderList([_objectSpread({}, item)], filterComponentDtoList),
48
62
  _calcWorkOrderList2 = _slicedToArray(_calcWorkOrderList, 1),
49
63
  transData = _calcWorkOrderList2[0]; //列表头部
50
64
 
@@ -55,9 +69,13 @@ function CustomizeWorkOrderCard(props) {
55
69
  var templateName = item.templateName,
56
70
  flowStatus = item.flowStatus,
57
71
  jsonMap = item.jsonMap;
58
- return /*#__PURE__*/_jsx("div", {
59
- className: "orderItem",
60
- children: /*#__PURE__*/_jsx("div", {
72
+ var hasPaymentStatus = Object.keys(jsonMap).find(function (key) {
73
+ return key === null || key === void 0 ? void 0 : key.includes('enterprisePaymentStatus');
74
+ }); // const paymentStatus = get(jsonMap, hasPaymentStatus, '')
75
+
76
+ return /*#__PURE__*/_jsxs("div", {
77
+ className: "customizeOrderItem",
78
+ children: [/*#__PURE__*/_jsx("div", {
61
79
  className: "orderItemLeft",
62
80
  children: /*#__PURE__*/_jsxs("div", {
63
81
  className: "orderItemType",
@@ -65,16 +83,21 @@ function CustomizeWorkOrderCard(props) {
65
83
  className: "orderItemLeftIcon"
66
84
  }), /*#__PURE__*/_jsxs("div", {
67
85
  className: "orderItemLeftName",
68
- children: [templateName, flowStatus && /*#__PURE__*/_jsx("span", {
86
+ children: [flowStatus && /*#__PURE__*/_jsx("span", {
69
87
  className: "status",
70
88
  style: {
71
89
  background: (_WORK_ORDER_STATUS = WORK_ORDER_STATUS[flowStatus]) === null || _WORK_ORDER_STATUS === void 0 ? void 0 : _WORK_ORDER_STATUS.bgColor
72
90
  },
73
91
  children: (_WORK_ORDER_STATUS2 = WORK_ORDER_STATUS[flowStatus]) === null || _WORK_ORDER_STATUS2 === void 0 ? void 0 : _WORK_ORDER_STATUS2.label
74
- })]
92
+ }), templateName]
75
93
  })]
76
94
  })
77
- })
95
+ }), hasPaymentStatus && get(jsonMap, hasPaymentStatus, '') && /*#__PURE__*/_jsx("div", {
96
+ style: {
97
+ fontWeight: 600
98
+ },
99
+ children: get(jsonMap, hasPaymentStatus, '')
100
+ })]
78
101
  });
79
102
  };
80
103
 
@@ -154,9 +177,8 @@ function CustomizeWorkOrderCard(props) {
154
177
 
155
178
  var ItemView = function ItemView(_ref) {
156
179
  var label = _ref.label,
157
- value = _ref.value,
158
- key = _ref.key;
159
- return /*#__PURE__*/_jsxs("div", {
180
+ value = _ref.value;
181
+ return value ? /*#__PURE__*/_jsxs("div", {
160
182
  className: "orderItemView",
161
183
  children: [/*#__PURE__*/_jsxs("div", {
162
184
  className: "itemViewLeft",
@@ -165,7 +187,7 @@ function CustomizeWorkOrderCard(props) {
165
187
  className: "itemViewRight",
166
188
  children: value
167
189
  })]
168
- }, key);
190
+ }) : null;
169
191
  };
170
192
 
171
193
  return /*#__PURE__*/_jsxs("div", {
@@ -177,22 +199,19 @@ function CustomizeWorkOrderCard(props) {
177
199
  label: "\u63D0\u4EA4\u5BA2\u670D",
178
200
  value: transData.submitter
179
201
  }, "submitter"), /*#__PURE__*/_jsx(ItemView, {
180
- label: "\u5DE5\u5355\u72B6\u6001",
181
- value: (_WORK_ORDER_STATUS$it = WORK_ORDER_STATUS[item === null || item === void 0 ? void 0 : (_item$jsonMap = item.jsonMap) === null || _item$jsonMap === void 0 ? void 0 : _item$jsonMap.flowStatus]) === null || _WORK_ORDER_STATUS$it === void 0 ? void 0 : _WORK_ORDER_STATUS$it.label
182
- }, "flowStatus"), /*#__PURE__*/_jsx(ItemView, {
183
202
  label: "\u5904\u7406\u5BA2\u670D",
184
203
  value: item === null || item === void 0 ? void 0 : (_item$handlerList = item.handlerList) === null || _item$handlerList === void 0 ? void 0 : (_item$handlerList$map = _item$handlerList.map(function (i) {
185
204
  return i.account;
186
205
  })) === null || _item$handlerList$map === void 0 ? void 0 : _item$handlerList$map.join('、')
187
- }, "handleList"), /*#__PURE__*/_jsx(Divider, {
206
+ }, "handleList"), /*#__PURE__*/_jsx(ItemView, {
207
+ label: "\u5DE5\u5355\u7F16\u53F7",
208
+ value: transData.id
209
+ }, "id"), /*#__PURE__*/_jsx(Divider, {
188
210
  dashed: true,
189
211
  style: {
190
212
  margin: '8px 0'
191
213
  }
192
- }), /*#__PURE__*/_jsx(ItemView, {
193
- label: "\u5E97\u94FA\u540D\u79F0",
194
- value: transData.shopName
195
- }, "shopName"), componentDtoList.map(function (t) {
214
+ }), filterComponentDtoList.map(function (t) {
196
215
  var instance = factory(t.workOrderComponentType, {
197
216
  id: t.uniqueKey,
198
217
  name: t.name,
@@ -214,7 +233,21 @@ function CustomizeWorkOrderCard(props) {
214
233
  style: {
215
234
  margin: '8px 0'
216
235
  }
217
- }), /*#__PURE__*/_jsx(ItemActions, {})]
236
+ }), /*#__PURE__*/_jsx(ItemView, {
237
+ label: "\u4FEE\u6539\u65F6\u95F4",
238
+ value: moment(transData.update).format('YYYY-MM-DD HH:mm:ss')
239
+ }, "update"), transData.completedTime && /*#__PURE__*/_jsx(ItemView, {
240
+ label: "\u5B8C\u6210\u65F6\u95F4",
241
+ value: moment(transData.completedTime).format('YYYY-MM-DD HH:mm:ss')
242
+ }, "completedTime"), /*#__PURE__*/_jsx(ItemView, {
243
+ label: "\u5B8C\u6210\u4EBA",
244
+ value: transData.completedUserName
245
+ }, "completedUserName"), /*#__PURE__*/_jsx(Divider, {
246
+ dashed: true,
247
+ style: {
248
+ margin: '8px 0'
249
+ }
250
+ }), !enabledTemplateList.includes(item.templateId) && /*#__PURE__*/_jsx(ItemActions, {})]
218
251
  });
219
252
  }
220
253
 
@@ -5,7 +5,7 @@
5
5
  border: 1px solid #f2f2f2;
6
6
  }
7
7
 
8
- .orderItem {
8
+ .customizeOrderItem {
9
9
  position: relative;
10
10
  display: flex;
11
11
  align-items: center;
@@ -38,7 +38,7 @@
38
38
  }
39
39
 
40
40
  .status {
41
- margin-left: 8px;
41
+ margin-right: 8px;
42
42
  padding: 2px 4px;
43
43
  font-size: 12px;
44
44
  line-height: 16px;
@@ -117,6 +117,7 @@
117
117
 
118
118
  .itemViewRight {
119
119
  flex-grow: 1;
120
+ min-width: 0;
120
121
  color: rgba(0, 0, 0, 0.85);
121
122
  word-break: break-all;
122
123
  }