bxs-tools-ui 3.2.0 → 3.3.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 (148) hide show
  1. package/README.md +20 -20
  2. package/es/add-and-take/index.css +1 -1
  3. package/es/add-and-take/index.js +283 -64
  4. package/es/adjust-baoe/index.css +1 -1
  5. package/es/adjust-baoe/index.js +444 -195
  6. package/es/business-card/index.css +1 -1
  7. package/es/business-card/index.js +1 -0
  8. package/es/canvas-poster/index.css +1 -1
  9. package/es/canvas-poster/index.js +1 -0
  10. package/es/index.css +1 -1
  11. package/es/index.js +936 -824
  12. package/es/insure-calculate/index.css +1 -1
  13. package/es/insure-calculate/index.js +438 -265
  14. package/es/person-info/index.css +1 -1
  15. package/es/person-info/index.js +296 -1370
  16. package/es/product-info/index.css +1 -1
  17. package/es/product-info/index.js +644 -548
  18. package/es/share-sheet/index.css +1 -1
  19. package/es/share-sheet/index.js +313 -21
  20. package/es/utils/index.js +530 -429
  21. package/lib/add-and-take/index.css +1 -1
  22. package/lib/add-and-take/index.js +283 -64
  23. package/lib/adjust-baoe/index.css +1 -1
  24. package/lib/adjust-baoe/index.js +441 -194
  25. package/lib/business-card/index.css +1 -1
  26. package/lib/business-card/index.js +1 -0
  27. package/lib/canvas-poster/index.css +1 -1
  28. package/lib/canvas-poster/index.js +1 -0
  29. package/lib/index.css +1 -1
  30. package/lib/index.js +939 -826
  31. package/lib/insure-calculate/index.css +1 -1
  32. package/lib/insure-calculate/index.js +438 -268
  33. package/lib/person-info/index.css +1 -1
  34. package/lib/person-info/index.js +295 -1372
  35. package/lib/product-info/index.css +1 -1
  36. package/lib/product-info/index.js +645 -550
  37. package/lib/share-sheet/index.css +1 -1
  38. package/lib/share-sheet/index.js +313 -25
  39. package/lib/utils/index.js +531 -433
  40. package/package.json +9 -7
  41. package/packages/add-and-take/components/interest-form.less +144 -0
  42. package/packages/add-and-take/components/interest-form.vue +179 -179
  43. package/packages/add-and-take/components/interest-items.less +87 -0
  44. package/packages/add-and-take/components/interest-items.vue +67 -80
  45. package/packages/add-and-take/components/interest-table.less +111 -0
  46. package/packages/add-and-take/components/interest-table.vue +31 -31
  47. package/packages/add-and-take/constant.ts +2 -2
  48. package/packages/add-and-take/demo/index.vue +89 -86
  49. package/packages/add-and-take/handler.ts +52 -57
  50. package/packages/add-and-take/index.less +69 -0
  51. package/packages/add-and-take/index.vue +156 -156
  52. package/packages/add-and-take/readme.md +87 -98
  53. package/packages/adjust-baoe/demo/index.vue +37 -47
  54. package/packages/adjust-baoe/index.less +125 -0
  55. package/packages/adjust-baoe/index.vue +134 -147
  56. package/packages/adjust-baoe/readme.md +35 -45
  57. package/packages/business-card/demo/index.vue +7 -7
  58. package/packages/business-card/index.less +100 -0
  59. package/packages/business-card/index.vue +18 -21
  60. package/packages/business-card/readme.md +46 -53
  61. package/packages/bxs-utils/demo/index.vue +2 -2
  62. package/packages/bxs-utils/index.ts +5 -5
  63. package/packages/bxs-utils/planbook/common.ts +56 -92
  64. package/packages/bxs-utils/planbook/index.ts +4 -4
  65. package/packages/bxs-utils/planbook/insurance.ts +137 -127
  66. package/packages/bxs-utils/planbook/person.ts +143 -147
  67. package/packages/bxs-utils/planbook/product.ts +473 -509
  68. package/packages/bxs-utils/readme.md +94 -84
  69. package/packages/bxs-utils/trade/index.js +1 -1
  70. package/packages/bxs-utils/trade/insureCalculate.js +91 -204
  71. package/packages/canvas-poster/demo/index.vue +9 -13
  72. package/packages/canvas-poster/index.less +5 -0
  73. package/packages/canvas-poster/index.vue +68 -79
  74. package/packages/canvas-poster/readme.md +106 -109
  75. package/packages/index.ts +1 -1
  76. package/packages/insure-calculate/demo/index.vue +20 -20
  77. package/packages/insure-calculate/index.less +366 -0
  78. package/packages/insure-calculate/index.vue +305 -329
  79. package/packages/insure-calculate/readme.md +99 -106
  80. package/packages/person-info/crm-popup.vue +81 -80
  81. package/packages/person-info/demo/index.vue +25 -37
  82. package/packages/person-info/index-inline.less +11 -0
  83. package/packages/person-info/index.vue +53 -83
  84. package/packages/person-info/readme.md +109 -115
  85. package/packages/planbook-input/components/footer.less +54 -0
  86. package/packages/planbook-input/components/footer.vue +8 -64
  87. package/packages/planbook-input/components/handler.js +33 -44
  88. package/packages/planbook-input/components/product-table.less +235 -0
  89. package/packages/planbook-input/components/product-table.vue +114 -108
  90. package/packages/planbook-input/demo/index.vue +3 -3
  91. package/packages/planbook-input/helper.js +852 -465
  92. package/packages/planbook-input/index.less +30 -0
  93. package/packages/planbook-input/index.vue +86 -103
  94. package/packages/planbook-input/readme.md +72 -90
  95. package/packages/product-info/demo/constant.js +1 -1
  96. package/packages/product-info/demo/index.vue +31 -43
  97. package/packages/product-info/index.less +271 -0
  98. package/packages/product-info/index.vue +198 -210
  99. package/packages/product-info/readme.md +72 -75
  100. package/packages/share-sheet/constant.js +4 -4
  101. package/packages/share-sheet/demo/index.vue +10 -10
  102. package/packages/share-sheet/handler.js +14 -14
  103. package/packages/share-sheet/index.less +201 -0
  104. package/packages/share-sheet/index.vue +39 -39
  105. package/packages/share-sheet/readme.md +121 -127
  106. package/src/api/add-and-take.js +45 -0
  107. package/src/api/adjust-baoe.js +16 -0
  108. package/src/api/index.js +6 -0
  109. package/src/api/planbook.js +93 -0
  110. package/src/api/request.js +211 -0
  111. package/src/api/trade.js +56 -0
  112. package/src/api/user.js +18 -0
  113. package/src/components/common/common-age-birthday.less +66 -0
  114. package/src/components/common/common-age-birthday.vue +27 -95
  115. package/src/components/common/common-popup.less +81 -0
  116. package/src/components/common/common-popup.vue +12 -96
  117. package/src/components/common/common-radio.less +75 -0
  118. package/src/components/common/common-radio.vue +13 -91
  119. package/src/components/common/common-select.less +13 -0
  120. package/src/components/common/common-select.vue +21 -38
  121. package/src/components/common/common-title.less +115 -0
  122. package/src/components/common/common-title.vue +24 -24
  123. package/src/js/loading.js +6 -6
  124. package/src/js/md5Token.js +38 -44
  125. package/src/js/utils.js +45 -53
  126. package/src/js/variables.js +47 -25
  127. package/src/style/base.less +18 -0
  128. package/src/style/color.less +40 -0
  129. package/src/style/variables.less +21 -42
  130. package/packages/add-and-take/api.ts +0 -70
  131. package/packages/add-and-take/components/interest-form.css +0 -146
  132. package/packages/add-and-take/components/interest-items.css +0 -87
  133. package/packages/add-and-take/components/interest-table.css +0 -113
  134. package/packages/add-and-take/index.css +0 -70
  135. package/packages/adjust-baoe/index.css +0 -123
  136. package/packages/business-card/index.css +0 -101
  137. package/packages/canvas-poster/index.css +0 -5
  138. package/packages/insure-calculate/index.css +0 -368
  139. package/packages/planbook-input/api.js +0 -29
  140. package/packages/planbook-input/components/product-table.css +0 -236
  141. package/packages/planbook-input/index.css +0 -31
  142. package/packages/product-info/index.css +0 -264
  143. package/packages/share-sheet/index.css +0 -203
  144. package/src/components/common/common-title.css +0 -116
  145. package/src/js/request.js +0 -64
  146. package/src/style/apply.css +0 -25
  147. package/src/style/base.css +0 -36
  148. package/src/style/color.css +0 -74
@@ -1,9 +1,11 @@
1
1
  import 'vant/lib/toast/index.css';
2
2
  import _Toast from 'vant/lib/toast';
3
- import QS from 'qs';
4
3
  import Vue from 'vue';
5
- import cloneDeep from 'lodash/cloneDeep';
6
- import { memoize } from 'lodash';
4
+ import cloneDeep$1 from 'lodash/cloneDeep';
5
+ import QS from 'qs';
6
+ import 'vant/lib/dialog/index.css';
7
+ import _Dialog from 'vant/lib/dialog';
8
+ import { memoize, cloneDeep } from 'lodash';
7
9
 
8
10
  function _initializerDefineProperty(e, i, r, l) {
9
11
  r && Object.defineProperty(e, i, {
@@ -472,142 +474,30 @@ function Watch(path, options) {
472
474
  });
473
475
  }
474
476
 
475
- document && document.cookie && document.cookie.match('ENABLE_LIZHAO_DEBUG=1');
476
-
477
- /**
478
- * **将对象下的 eleOrderList 数组中的子元素下的 value,转换为 key-value 键值对**
479
- * @author Lizhao <lz@winbaoxian.com>
480
- * @date 2022-04-25
481
- * @param {any} obj 必传。带eleOrderList数组的对象。如人员数据、产品数据
482
- * @example
483
- * convertEleOrderListToObj({
484
- "key": "insuredInfo"
485
- "eleOrderList": [
486
- { "value": true, "key": "title" },
487
- { "value": 1, "key": "sex" },
488
- { "value": 30, "key": "age" },
489
- { "value": "2020/10/23", "key": "insuranceDay" }
490
- ]
491
- })
492
- // returns
493
- // {
494
- // "key": "insuredInfo",
495
- // "title": true,
496
- // "sex": 1,
497
- // "age": 30,
498
- // "insuranceDay": "2020/10/23",
499
- // }
500
- * @returns {any}
501
- */
502
- function convertEleOrderListToObj(obj) {
503
- var resData = {};
504
- var _loop = function _loop(k) {
505
- if (k == 'eleOrderList') {
506
- obj[k].map(function (ele) {
507
- resData[ele.key] = ele.value;
508
- });
509
- } else {
510
- // eleOrderList中有的key,则不取当前对象下的属性
511
- if (!obj.eleOrderList || obj.eleOrderList.every(function (e) {
512
- return e.key !== k;
513
- })) {
514
- resData[k] = obj[k];
515
- }
516
- }
517
- };
518
- for (var k in obj) {
519
- _loop(k);
477
+ function asyncGeneratorStep(n, t, e, r, o, a, c) {
478
+ try {
479
+ var i = n[a](c),
480
+ u = i.value;
481
+ } catch (n) {
482
+ return void e(n);
520
483
  }
521
- return resData;
484
+ i.done ? t(u) : Promise.resolve(u).then(r, o);
522
485
  }
523
-
524
- /**
525
- * **对象的深拷贝**
526
- * @ignore
527
- * @author Lizhao <lz@winbaoxian.com>
528
- * @date 2022-04-25
529
- * @param {object} obj - 必传
530
- * @param {WeakMap} hash - 可不传
531
- * @returns {object} 拷贝对象
532
- */
533
- function deepCopy(obj) {
534
- var hash = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new WeakMap();
535
- if (!obj || _typeof$2(obj) !== 'object') {
536
- return obj;
537
- }
538
- if (hash.has(obj)) {
539
- return hash.get(obj);
540
- }
541
- var newObj;
542
- var Constructor = obj.constructor;
543
- switch (Constructor) {
544
- case RegExp:
545
- newObj = new Constructor(obj);
546
- break;
547
- case Date:
548
- newObj = new Constructor(obj.getTime());
549
- break;
550
- default:
551
- newObj = new Constructor();
552
- break;
553
- }
554
- hash.set(obj, newObj);
555
- for (var key in obj) {
556
- if (obj.hasOwnProperty(key)) {
557
- newObj[key] = _typeof$2(obj[key]) === 'object' ? deepCopy(obj[key], hash) : obj[key];
558
- }
559
- }
560
- return newObj;
561
- }
562
-
563
- /**
564
- * **转换人员数据**
565
- * @author Lizhao <lz@winbaoxian.com>
566
- * @date 2022-04-26
567
- * @param {IPbPersons} allPersonsData 必传。所有人员数据
568
- * @param {null|string|string[]} type 可不传。
569
- * 不传,人员数据按原结构返回;
570
- * 字符串,返回指定的人员数据;
571
- * 数组,以数组形式,返回多个人员数据。
572
- * @returns {any} 人员数据(单个或多个)
573
- */
574
- function convertPersonData(allPersonsData) {
575
- var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
576
- var cPersonData = {};
577
- if (allPersonsData) {
578
- //转换收件人信息
579
- if (allPersonsData.recipientInfo) {
580
- cPersonData.recipientInfo = convertEleOrderListToObj(allPersonsData.recipientInfo);
581
- }
582
- //转换被、投、投保人配偶的信息
583
- if (allPersonsData.personOrderList) {
584
- allPersonsData.personOrderList.forEach(function (person) {
585
- cPersonData[person.key] = convertEleOrderListToObj(person);
586
- });
587
- }
588
- }
589
- if (!type) {
590
- return {
591
- recipientInfo: cPersonData.recipientInfo,
592
- personOrderList: allPersonsData.personOrderList && allPersonsData.personOrderList.map(function (p) {
593
- return p.key;
594
- }).map(function (p) {
595
- return cPersonData[p];
596
- })
597
- };
598
- }
599
- if (typeof type === 'string') {
600
- return cPersonData[type];
601
- }
602
- if (type.constructor === Array) {
603
- var temp = [];
604
- for (var k in cPersonData) {
605
- if (type.indexOf(k) !== -1) {
606
- temp.push(cPersonData[k]);
486
+ function _asyncToGenerator(n) {
487
+ return function () {
488
+ var t = this,
489
+ e = arguments;
490
+ return new Promise(function (r, o) {
491
+ var a = n.apply(t, e);
492
+ function _next(n) {
493
+ asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
607
494
  }
608
- }
609
- return temp;
610
- }
495
+ function _throw(n) {
496
+ asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
497
+ }
498
+ _next(void 0);
499
+ });
500
+ };
611
501
  }
612
502
 
613
503
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
@@ -1037,7 +927,8 @@ function requireRegenerator () {
1037
927
  return regenerator;
1038
928
  }
1039
929
 
1040
- requireRegenerator();
930
+ var regeneratorExports = requireRegenerator();
931
+ const _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regeneratorExports);
1041
932
 
1042
933
  var jax$1 = {exports: {}};
1043
934
 
@@ -9007,12 +8898,27 @@ var jaxExports = requireJax();
9007
8898
  const Jax = /*@__PURE__*/getDefaultExportFromCjs(jaxExports);
9008
8899
 
9009
8900
  var getStandardOrigin = Jax.urlUtil.getStandardOrigin;
8901
+ var _Jax$parseUaString = Jax.parseUaString();
8902
+ _Jax$parseUaString.isApp;
8903
+ _Jax$parseUaString.appType;
8904
+ _Jax$parseUaString.appVersion;
8905
+ _Jax$parseUaString.isAndroid;
8906
+ _Jax$parseUaString.isIos;
8907
+ _Jax$parseUaString.isBxsApp;
8908
+ _Jax$parseUaString.isBaoXiaoZhuApp;
8909
+ _Jax$parseUaString.isBrokerApp;
8910
+ _Jax$parseUaString.isYjjApp;
8911
+ _Jax$parseUaString.isToBApp;
8912
+ _Jax$parseUaString.isRongYiBaoApp;
8913
+ _Jax$parseUaString.isWeChat;
8914
+ _Jax$parseUaString.appScheme;
9010
8915
  var hostname = window && window.location && window.location.hostname || '';
9011
8916
  /** 当前页 host 为 cppoc- 前缀时,请求 loading 使用 Vant Toast,否则走 appBridge */
9012
8917
  var IS_CPPOC_HOST = hostname.startsWith('cppoc-');
9013
8918
  var IS_PRODUCT_ENV = hostname.search(/(winbaoxian|ai-baoxiaozhu)\.com/) !== -1;
9014
8919
  hostname.search(/(winbaoxian|ai-baoxiaozhu)\.cn/) !== -1;
9015
8920
  hostname.search(/localhost|192\.168|127\.0\.0\.1|dev\.winbaoxian\.cn/) !== -1;
8921
+ var IS_LOCALHOST_IP_ENV = hostname.search(/192\.168/) !== -1;
9016
8922
  var IS_UAT_ENV = hostname.includes("pbf-uat.");
9017
8923
  var IS_ENABLE_DEBUG = !IS_PRODUCT_ENV;
9018
8924
  if (IS_ENABLE_DEBUG) {
@@ -9020,6 +8926,9 @@ if (IS_ENABLE_DEBUG) {
9020
8926
  }
9021
8927
  hostname.includes('ai-baoxiaozhu') ? 'ai-baoxiaozhu' : 'winbaoxian';
9022
8928
  function getFullOrigin(data) {
8929
+ if (IS_LOCALHOST_IP_ENV) {
8930
+ return "https://".concat(data, ".winbaoxian.cn");
8931
+ }
9023
8932
  var _prefixDomain = IS_CPPOC_HOST ? 'cppoc-' : '';
9024
8933
  if (typeof data === 'string') {
9025
8934
  return getStandardOrigin("".concat(_prefixDomain).concat(data));
@@ -9042,6 +8951,381 @@ function getUrlParams(url) {
9042
8951
  return _searchStr ? QS.parse(_searchStr) : {};
9043
8952
  }
9044
8953
 
8954
+ function showLoading() {
8955
+ if (IS_CPPOC_HOST) {
8956
+ _Toast.loading({
8957
+ message: '加载中...',
8958
+ forbidClick: true
8959
+ });
8960
+ } else if (window.appBridge && window.appBridge.showLoading) {
8961
+ window.appBridge.showLoading();
8962
+ }
8963
+ }
8964
+ function hideLoading() {
8965
+ if (IS_CPPOC_HOST) {
8966
+ _Toast.clear();
8967
+ } else if (window.appBridge && window.appBridge.hideLoading) {
8968
+ window.appBridge.hideLoading();
8969
+ }
8970
+ }
8971
+
8972
+ function ownKeys$2(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; }
8973
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty$1(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
8974
+ var options = {
8975
+ baseURL: PLANBOOK_API_HOSTNAME,
8976
+ withCredentials: true,
8977
+ timeout: 10000,
8978
+ headers: {
8979
+ 'X-Requested-With': 'XMLHttpRequest'
8980
+ }
8981
+ };
8982
+ var loadingTimer = null;
8983
+ var showRequestLoading = function showRequestLoading() {
8984
+ if (loadingTimer) {
8985
+ clearTimeout(loadingTimer);
8986
+ }
8987
+ loadingTimer = setTimeout(function () {
8988
+ showLoading();
8989
+ }, 300);
8990
+ };
8991
+ var hideRequestLoading = function hideRequestLoading() {
8992
+ if (loadingTimer) {
8993
+ hideLoading();
8994
+ }
8995
+ if (loadingTimer) {
8996
+ clearTimeout(loadingTimer);
8997
+ }
8998
+ };
8999
+ var normalizeMethod = function normalizeMethod(method) {
9000
+ return (method || 'get').toUpperCase();
9001
+ };
9002
+ var serializeParams = function serializeParams(params) {
9003
+ if (!params) {
9004
+ return '';
9005
+ }
9006
+ var queryParts = [];
9007
+ Object.keys(params).forEach(function (key) {
9008
+ var value = params[key];
9009
+ if (value === undefined || value === null) {
9010
+ return;
9011
+ }
9012
+ if (Array.isArray(value)) {
9013
+ value.forEach(function (item) {
9014
+ queryParts.push("".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(item)));
9015
+ });
9016
+ return;
9017
+ }
9018
+ queryParts.push("".concat(encodeURIComponent(key), "=").concat(encodeURIComponent(value)));
9019
+ });
9020
+ return queryParts.join('&');
9021
+ };
9022
+ var isAbsoluteUrl = function isAbsoluteUrl(url) {
9023
+ return /^https?:\/\//.test(url);
9024
+ };
9025
+ var buildUrl = function buildUrl(baseURL, url, params) {
9026
+ var queryString = serializeParams(params);
9027
+ var requestUrl = isAbsoluteUrl(url) ? url : "".concat(baseURL).concat(url);
9028
+ if (!queryString) {
9029
+ return requestUrl;
9030
+ }
9031
+ return "".concat(requestUrl).concat(requestUrl.includes('?') ? '&' : '?').concat(queryString);
9032
+ };
9033
+ var isPlainObject = function isPlainObject(value) {
9034
+ return Object.prototype.toString.call(value) === '[object Object]';
9035
+ };
9036
+ var buildBody = function buildBody(data, headers) {
9037
+ if (data === undefined || data === null) {
9038
+ return undefined;
9039
+ }
9040
+ if (data instanceof FormData || data instanceof Blob || typeof data === 'string') {
9041
+ return data;
9042
+ }
9043
+ if (isPlainObject(data) || Array.isArray(data)) {
9044
+ if (!headers['Content-Type']) {
9045
+ headers['Content-Type'] = 'application/json';
9046
+ }
9047
+ return JSON.stringify(data);
9048
+ }
9049
+ return data;
9050
+ };
9051
+ var parseResponse = /*#__PURE__*/function () {
9052
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(response) {
9053
+ var contentType, text;
9054
+ return _regeneratorRuntime.wrap(function (_context) {
9055
+ while (1) switch (_context.prev = _context.next) {
9056
+ case 0:
9057
+ contentType = response.headers.get('content-type') || '';
9058
+ if (!contentType.includes('application/json')) {
9059
+ _context.next = 1;
9060
+ break;
9061
+ }
9062
+ return _context.abrupt("return", response.json());
9063
+ case 1:
9064
+ _context.next = 2;
9065
+ return response.text();
9066
+ case 2:
9067
+ text = _context.sent;
9068
+ if (text) {
9069
+ _context.next = 3;
9070
+ break;
9071
+ }
9072
+ return _context.abrupt("return", {});
9073
+ case 3:
9074
+ _context.prev = 3;
9075
+ return _context.abrupt("return", JSON.parse(text));
9076
+ case 4:
9077
+ _context.prev = 4;
9078
+ _context["catch"](3);
9079
+ return _context.abrupt("return", {
9080
+ data: text
9081
+ });
9082
+ case 5:
9083
+ case "end":
9084
+ return _context.stop();
9085
+ }
9086
+ }, _callee, null, [[3, 4]]);
9087
+ }));
9088
+ return function parseResponse(_x) {
9089
+ return _ref.apply(this, arguments);
9090
+ };
9091
+ }();
9092
+ var createTimeoutError = function createTimeoutError(timeout) {
9093
+ var error = new Error("timeout of ".concat(timeout, "ms exceeded"));
9094
+ error.name = 'TimeoutError';
9095
+ return error;
9096
+ };
9097
+ var request = /*#__PURE__*/function () {
9098
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2(config) {
9099
+ var url, _config$baseURL, baseURL, _config$method, method, params, data, _config$headers, headers, isIgnoreLoading, _config$timeout, timeout, _config$withCredentia, withCredentials, returnFullResponse, requestHeaders, timeoutId, fetchPromise, response, res, error, code, messageMap, message, _t2;
9100
+ return _regeneratorRuntime.wrap(function (_context2) {
9101
+ while (1) switch (_context2.prev = _context2.next) {
9102
+ case 0:
9103
+ url = config.url, _config$baseURL = config.baseURL, baseURL = _config$baseURL === void 0 ? options.baseURL : _config$baseURL, _config$method = config.method, method = _config$method === void 0 ? 'get' : _config$method, params = config.params, data = config.data, _config$headers = config.headers, headers = _config$headers === void 0 ? {} : _config$headers, isIgnoreLoading = config.isIgnoreLoading, _config$timeout = config.timeout, timeout = _config$timeout === void 0 ? options.timeout : _config$timeout, _config$withCredentia = config.withCredentials, withCredentials = _config$withCredentia === void 0 ? options.withCredentials : _config$withCredentia, returnFullResponse = config.returnFullResponse;
9104
+ if (!isIgnoreLoading) {
9105
+ showRequestLoading();
9106
+ }
9107
+ requestHeaders = _objectSpread$2(_objectSpread$2({}, options.headers), headers);
9108
+ timeoutId = null;
9109
+ _context2.prev = 1;
9110
+ fetchPromise = fetch(buildUrl(baseURL, url, params), {
9111
+ method: normalizeMethod(method),
9112
+ headers: requestHeaders,
9113
+ body: normalizeMethod(method) === 'GET' ? undefined : buildBody(data, requestHeaders),
9114
+ credentials: withCredentials ? 'include' : 'same-origin'
9115
+ });
9116
+ _context2.next = 2;
9117
+ return Promise.race([fetchPromise, new Promise(function (resolve, reject) {
9118
+ timeoutId = setTimeout(function () {
9119
+ reject(createTimeoutError(timeout));
9120
+ }, timeout);
9121
+ })]);
9122
+ case 2:
9123
+ response = _context2.sent;
9124
+ _context2.next = 3;
9125
+ return parseResponse(response);
9126
+ case 3:
9127
+ res = _context2.sent;
9128
+ if (response.ok) {
9129
+ _context2.next = 4;
9130
+ break;
9131
+ }
9132
+ error = new Error("Request failed with status code ".concat(response.status));
9133
+ error.response = {
9134
+ status: response.status,
9135
+ data: res
9136
+ };
9137
+ throw error;
9138
+ case 4:
9139
+ code = res.code;
9140
+ if (!['002012', '002013', '002015'].includes(code)) {
9141
+ _context2.next = 5;
9142
+ break;
9143
+ }
9144
+ messageMap = {
9145
+ m002012: '当前账号因操作频繁被限制,请明天再试。感谢理解',
9146
+ m002013: '您的操作频率较高,已达到今日生成上限。请稍后再试或明天继续使用,感谢您的理解!',
9147
+ m002015: '您今天做了太多计划书了,休息一下,明天再来吧'
9148
+ };
9149
+ message = messageMap["m".concat(code)];
9150
+ if (message) {
9151
+ _Dialog.alert({
9152
+ message: message,
9153
+ confirmButtonText: '知道了',
9154
+ confirmButtonColor: '#0A64FE'
9155
+ });
9156
+ }
9157
+ return _context2.abrupt("return", Promise.reject({
9158
+ code: code,
9159
+ message: message
9160
+ }));
9161
+ case 5:
9162
+ if (!(code === 401 || res.status === 401)) {
9163
+ _context2.next = 6;
9164
+ break;
9165
+ }
9166
+ gotoLogin();
9167
+ return _context2.abrupt("return", Promise.reject('status: 401'));
9168
+ case 6:
9169
+ if (!(res.success && res.data === -1)) {
9170
+ _context2.next = 7;
9171
+ break;
9172
+ }
9173
+ gotoLogin();
9174
+ return _context2.abrupt("return", Promise.reject('login: -1'));
9175
+ case 7:
9176
+ return _context2.abrupt("return", returnFullResponse ? res : res.data);
9177
+ case 8:
9178
+ _context2.prev = 8;
9179
+ _t2 = _context2["catch"](1);
9180
+ if (_t2.response && _t2.response.status == 401) {
9181
+ gotoLogin();
9182
+ }
9183
+ return _context2.abrupt("return", Promise.reject(_t2));
9184
+ case 9:
9185
+ _context2.prev = 9;
9186
+ if (timeoutId) {
9187
+ clearTimeout(timeoutId);
9188
+ }
9189
+ hideRequestLoading();
9190
+ return _context2.finish(9);
9191
+ case 10:
9192
+ case "end":
9193
+ return _context2.stop();
9194
+ }
9195
+ }, _callee2, null, [[1, 8, 9, 10]]);
9196
+ }));
9197
+ return function request(_x2) {
9198
+ return _ref2.apply(this, arguments);
9199
+ };
9200
+ }();
9201
+
9202
+ function validateAdjustBaoe(params) {
9203
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
9204
+ return request({
9205
+ url: "/planBook/".concat(options.publicPbUuid ? 'public' : 'V2', "/validateAccount/-1/low"),
9206
+ method: 'post',
9207
+ data: QS.stringify({
9208
+ jd: JSON.stringify(params)
9209
+ }),
9210
+ headers: {
9211
+ Accept: 'application/json, text/plain, */*',
9212
+ 'Content-Type': 'application/x-www-form-urlencoded'
9213
+ }
9214
+ });
9215
+ }
9216
+
9217
+ document && document.cookie && document.cookie.match('ENABLE_LIZHAO_DEBUG=1');
9218
+
9219
+ /**
9220
+ * **将对象下的 eleOrderList 数组中的子元素下的 value,转换为 key-value 键值对**
9221
+ * @author Lizhao <lz@winbaoxian.com>
9222
+ * @date 2022-04-25
9223
+ * @param {any} obj 必传。带eleOrderList数组的对象。如人员数据、产品数据
9224
+ * @example
9225
+ * convertEleOrderListToObj({
9226
+ "key": "insuredInfo"
9227
+ "eleOrderList": [
9228
+ { "value": true, "key": "title" },
9229
+ { "value": 1, "key": "sex" },
9230
+ { "value": 30, "key": "age" },
9231
+ { "value": "2020/10/23", "key": "insuranceDay" }
9232
+ ]
9233
+ })
9234
+ // returns
9235
+ // {
9236
+ // "key": "insuredInfo",
9237
+ // "title": true,
9238
+ // "sex": 1,
9239
+ // "age": 30,
9240
+ // "insuranceDay": "2020/10/23",
9241
+ // }
9242
+ * @returns {any}
9243
+ */
9244
+ function convertEleOrderListToObj(obj) {
9245
+ var resData = {};
9246
+ var _loop = function _loop(k) {
9247
+ if (k == 'eleOrderList') {
9248
+ obj[k].map(function (ele) {
9249
+ resData[ele.key] = ele.value;
9250
+ });
9251
+ } else {
9252
+ // eleOrderList中有的key,则不取当前对象下的属性
9253
+ if (!obj.eleOrderList || obj.eleOrderList.every(function (e) {
9254
+ return e.key !== k;
9255
+ })) {
9256
+ resData[k] = obj[k];
9257
+ }
9258
+ }
9259
+ };
9260
+ for (var k in obj) {
9261
+ _loop(k);
9262
+ }
9263
+ return resData;
9264
+ }
9265
+
9266
+ /**
9267
+ * **转换人员数据**
9268
+ * @author Lizhao <lz@winbaoxian.com>
9269
+ * @date 2022-04-26
9270
+ * @param {IPbPersons} allPersonsData 必传。所有人员数据
9271
+ * @param {null|string|string[]} type 可不传。
9272
+ * 不传,人员数据按原结构返回;
9273
+ * 字符串,返回指定的人员数据;
9274
+ * 数组,以数组形式,返回多个人员数据。
9275
+ * @returns {any} 人员数据(单个或多个)
9276
+ */
9277
+ function convertPersonData(allPersonsData) {
9278
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
9279
+ var cPersonData = {};
9280
+ if (allPersonsData) {
9281
+ //转换收件人信息
9282
+ if (allPersonsData.recipientInfo) {
9283
+ cPersonData.recipientInfo = convertEleOrderListToObj(allPersonsData.recipientInfo);
9284
+ }
9285
+ //转换被、投、投保人配偶的信息
9286
+ if (allPersonsData.personOrderList) {
9287
+ allPersonsData.personOrderList.forEach(function (person) {
9288
+ cPersonData[person.key] = convertEleOrderListToObj(person);
9289
+ });
9290
+ }
9291
+ }
9292
+ if (!type) {
9293
+ return {
9294
+ recipientInfo: cPersonData.recipientInfo,
9295
+ personOrderList: allPersonsData.personOrderList && allPersonsData.personOrderList.map(function (p) {
9296
+ return p.key;
9297
+ }).map(function (p) {
9298
+ return cPersonData[p];
9299
+ })
9300
+ };
9301
+ }
9302
+ if (typeof type === 'string') {
9303
+ return cPersonData[type];
9304
+ }
9305
+ if (type.constructor === Array) {
9306
+ var temp = [];
9307
+ for (var k in cPersonData) {
9308
+ if (type.indexOf(k) !== -1) {
9309
+ temp.push(cPersonData[k]);
9310
+ }
9311
+ }
9312
+ return temp;
9313
+ }
9314
+ }
9315
+
9316
+ function getPlanbookInsuranceVerifyData(params) {
9317
+ return request({
9318
+ baseURL: APP_HOSTNAME,
9319
+ url: '/planBook/input/insurance/verifyData',
9320
+ method: 'post',
9321
+ data: params,
9322
+ headers: {
9323
+ Accept: 'application/json, text/plain, */*',
9324
+ 'Content-Type': 'application/json;'
9325
+ }
9326
+ });
9327
+ }
9328
+
9045
9329
  function ownKeys$1(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; }
9046
9330
  function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty$1(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9047
9331
 
@@ -9054,25 +9338,7 @@ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t
9054
9338
  * @returns {Promise<any>} 产品下所有险种的费率
9055
9339
  */
9056
9340
  memoize(function (params) {
9057
- var url = "".concat(APP_HOSTNAME, "/planBook/input/insurance/verifyData");
9058
- return fetch(url, {
9059
- method: 'POST',
9060
- credentials: 'include',
9061
- headers: {
9062
- Accept: 'application/json, text/plain, */*',
9063
- 'Content-Type': 'application/json;'
9064
- },
9065
- body: JSON.stringify(params)
9066
- }).then(function (response) {
9067
- return response.json();
9068
- }).then(function (_ref) {
9069
- var success = _ref.success,
9070
- data = _ref.data;
9071
- if (!success || !data) {
9072
- return Promise.reject();
9073
- }
9074
- return Promise.resolve(data);
9075
- }).catch(function () {});
9341
+ return getPlanbookInsuranceVerifyData(params).catch(function () {});
9076
9342
  }, function (params) {
9077
9343
  return QS.stringify(params);
9078
9344
  });
@@ -9120,7 +9386,7 @@ function convertProductData(prodData) {
9120
9386
  checkedInsData[ele.key] = insuranceData[ele.key];
9121
9387
  }
9122
9388
  });
9123
- productData.mulInsOrderList.push(deepCopy(checkedInsData));
9389
+ productData.mulInsOrderList.push(cloneDeep(checkedInsData));
9124
9390
  }
9125
9391
  });
9126
9392
  return;
@@ -9330,8 +9596,8 @@ var AdjustBaoe = (_dec = Component({}), _dec2 = Prop({
9330
9596
  var params = this.params,
9331
9597
  personData = this.personData,
9332
9598
  productData = this.productData;
9333
- var cloneProductData = convertProductData(cloneDeep(productData));
9334
- var cloneAdjustBaoeData = cloneDeep(this.adjustBaoeData);
9599
+ var cloneProductData = convertProductData(cloneDeep$1(productData));
9600
+ var cloneAdjustBaoeData = cloneDeep$1(this.adjustBaoeData);
9335
9601
  this.updateData(this.formData);
9336
9602
  if (!this.adjustBaoeData) {
9337
9603
  return Promise.resolve();
@@ -9346,44 +9612,27 @@ var AdjustBaoe = (_dec = Component({}), _dec2 = Prop({
9346
9612
  delete ins[ele];
9347
9613
  });
9348
9614
  });
9349
- var url = "".concat(PLANBOOK_API_HOSTNAME, "/planBook/").concat(params.publicPbUuid ? 'public' : 'V2', "/validateAccount/-1/low");
9350
- return fetch(url, {
9351
- method: 'POST',
9352
- credentials: 'include',
9353
- headers: {
9354
- Accept: 'application/json, text/plain, */*',
9355
- 'Content-Type': 'application/x-www-form-urlencoded'
9615
+ return validateAdjustBaoe({
9616
+ insuranceTypeId: params.planbookId * 1,
9617
+ publicPbUuid: params.publicPbUuid,
9618
+ personData: {
9619
+ personOrderList: convertPersonData(personData, personData.personOrderList.map(function (p) {
9620
+ return p.key;
9621
+ }))
9356
9622
  },
9357
- body: QS.stringify({
9358
- jd: JSON.stringify({
9359
- insuranceTypeId: params.planbookId * 1,
9360
- publicPbUuid: params.publicPbUuid,
9361
- personData: {
9362
- personOrderList: convertPersonData(personData, personData.personOrderList.map(function (p) {
9363
- return p.key;
9364
- }))
9365
- },
9366
- productGroupList: [{
9367
- key: params.groupKey,
9368
- prodOrderList: [_objectSpread(_objectSpread({}, cloneProductData), {}, {
9369
- adjustBaoeData: this.adjustBaoeData
9370
- })]
9371
- }]
9372
- })
9373
- })
9374
- }).then(function (response) {
9375
- return response.json();
9376
- }).then(function (_ref) {
9377
- var success = _ref.success,
9378
- data = _ref.data,
9379
- info = _ref.info;
9380
- if (!success || !data || data === -1) {
9381
- _this5.adjustBaoeData = cloneAdjustBaoeData;
9382
- _this5.$toast(info);
9383
- return Promise.reject();
9384
- }
9385
- return Promise.resolve(data);
9623
+ productGroupList: [{
9624
+ key: params.groupKey,
9625
+ prodOrderList: [_objectSpread(_objectSpread({}, cloneProductData), {}, {
9626
+ adjustBaoeData: this.adjustBaoeData
9627
+ })]
9628
+ }]
9629
+ }, {
9630
+ publicPbUuid: params.publicPbUuid
9386
9631
  }).catch(function (err) {
9632
+ _this5.adjustBaoeData = cloneAdjustBaoeData;
9633
+ if (err) {
9634
+ _this5.$toast(err);
9635
+ }
9387
9636
  console.log(err);
9388
9637
  });
9389
9638
  }