bxs-tools-ui 3.2.0-2 → 3.2.0-4
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/es/index.js +85 -68
- package/es/person-info/index.js +15 -4
- package/es/product-info/index.js +84 -67
- package/es/utils/index.js +15 -4
- package/lib/index.js +85 -68
- package/lib/person-info/index.js +15 -4
- package/lib/product-info/index.js +84 -67
- package/lib/utils/index.js +15 -4
- package/package.json +1 -1
- package/packages/bxs-utils/planbook/insurance.ts +2 -2
- package/packages/bxs-utils/planbook/product.ts +8 -2
- package/packages/index.ts +1 -1
- package/packages/product-info/index.vue +27 -29
|
@@ -9518,7 +9518,7 @@
|
|
|
9518
9518
|
max: max || Infinity,
|
|
9519
9519
|
message: message,
|
|
9520
9520
|
validator: function validator(value, rule) {
|
|
9521
|
-
return
|
|
9521
|
+
return (value || value === 0) && value >= rule.min && value <= rule.max;
|
|
9522
9522
|
}
|
|
9523
9523
|
});
|
|
9524
9524
|
}
|
|
@@ -9529,7 +9529,7 @@
|
|
|
9529
9529
|
multiple: ele.multi,
|
|
9530
9530
|
message: "\u8BF7\u8F93\u5165".concat(ele.multi, "\u500D\u6570"),
|
|
9531
9531
|
validator: function validator(value, rule) {
|
|
9532
|
-
return
|
|
9532
|
+
return (value || value === 0) && !(value % rule.multiple);
|
|
9533
9533
|
}
|
|
9534
9534
|
});
|
|
9535
9535
|
}
|
|
@@ -9762,7 +9762,7 @@
|
|
|
9762
9762
|
var titleEle = (ins.eleOrderList || []).find(function (e) {
|
|
9763
9763
|
return e.key === 'title';
|
|
9764
9764
|
});
|
|
9765
|
-
if (titleEle && groupInsuranceIdEle && !Array.isArray(
|
|
9765
|
+
if (titleEle && groupInsuranceIdEle && !Array.isArray(groupInsuranceIdEle.value)) {
|
|
9766
9766
|
titleEle.value = groupInsuranceIdEle.value === ins.key;
|
|
9767
9767
|
}
|
|
9768
9768
|
});
|
|
@@ -10288,6 +10288,14 @@
|
|
|
10288
10288
|
|
|
10289
10289
|
// 处理组合险中的逻辑,并加入到产品险种列表中
|
|
10290
10290
|
var _loop = function _loop(k) {
|
|
10291
|
+
var _oldGroupInsurance$el;
|
|
10292
|
+
var oldGroupInsurance = mulInsOrderList.find(function (ins) {
|
|
10293
|
+
return ins.key === k;
|
|
10294
|
+
});
|
|
10295
|
+
var oldGroupTitleElement = oldGroupInsurance ? (_oldGroupInsurance$el = oldGroupInsurance.eleOrderList) === null || _oldGroupInsurance$el === void 0 ? void 0 : _oldGroupInsurance$el.find(function (e) {
|
|
10296
|
+
return e.key === 'title';
|
|
10297
|
+
}) : null;
|
|
10298
|
+
var oldGroupTitleValue = oldGroupTitleElement ? oldGroupTitleElement.value : null;
|
|
10291
10299
|
var nGroupTitleEle = newGroupInsMap[k].eleOrderList.find(function (e) {
|
|
10292
10300
|
return e.key === 'title';
|
|
10293
10301
|
});
|
|
@@ -10316,9 +10324,12 @@
|
|
|
10316
10324
|
var checkedInsurance = checkedInsurances[0];
|
|
10317
10325
|
// hasRequiredIns:如果组合险中有一款是必选的,则整个组合险为选中状态
|
|
10318
10326
|
// 所有险种都不可选,则组合险不可修改且不选中。否则,组合险种可选
|
|
10319
|
-
nGroupTitleEle.value =
|
|
10327
|
+
nGroupTitleEle.value = oldGroupTitleValue === false ? oldGroupTitleValue : (nGroupInsuranceIdEle.opts || []).some(function (opt) {
|
|
10320
10328
|
return !opt.isDisabled;
|
|
10321
10329
|
});
|
|
10330
|
+
if (hasRequiredIns) {
|
|
10331
|
+
nGroupTitleEle.value = hasRequiredIns;
|
|
10332
|
+
}
|
|
10322
10333
|
nGroupTitleEle.isDisabled = hasRequiredIns || (nGroupInsuranceIdEle.opts || []).every(function (opt) {
|
|
10323
10334
|
return !!opt.isDisabled;
|
|
10324
10335
|
});
|
|
@@ -11919,12 +11930,6 @@
|
|
|
11919
11930
|
if (!['title'].includes(eleData.key)) {
|
|
11920
11931
|
this.requiestRecommendValues();
|
|
11921
11932
|
}
|
|
11922
|
-
setTimeout(function () {
|
|
11923
|
-
var refInsuranceForm = lodash.get(_this4.$refs, "insuranceForm".concat(insData.key, "[0]"));
|
|
11924
|
-
if (refInsuranceForm) {
|
|
11925
|
-
refInsuranceForm.validate(eleData.key);
|
|
11926
|
-
}
|
|
11927
|
-
}, 300);
|
|
11928
11933
|
this.$nextTick(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
11929
11934
|
var errorMsg;
|
|
11930
11935
|
return _regeneratorRuntime.wrap(function (_context2) {
|
|
@@ -11956,11 +11961,11 @@
|
|
|
11956
11961
|
}, {
|
|
11957
11962
|
key: "changeProduct",
|
|
11958
11963
|
value: function () {
|
|
11959
|
-
var _changeProduct = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function
|
|
11964
|
+
var _changeProduct = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee4(productData, options) {
|
|
11960
11965
|
var _this5 = this;
|
|
11961
|
-
var $listeners, inputData, verifyData, personData, groupKey, productKey, params, type, insData, eleData, planbookId, publicPbUuid, productVerifyData, eventTarget, errorMsg
|
|
11962
|
-
return _regeneratorRuntime.wrap(function (
|
|
11963
|
-
while (1) switch (
|
|
11966
|
+
var $listeners, inputData, verifyData, personData, groupKey, productKey, params, type, insData, eleData, planbookId, publicPbUuid, productVerifyData, eventTarget, errorMsg;
|
|
11967
|
+
return _regeneratorRuntime.wrap(function (_context4) {
|
|
11968
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
11964
11969
|
case 0:
|
|
11965
11970
|
$listeners = this.$listeners, inputData = this.inputData, verifyData = this.verifyData, personData = this.personData, groupKey = this.groupKey, productKey = this.productKey, params = this.params;
|
|
11966
11971
|
type = options.type, insData = options.insData, eleData = options.eleData;
|
|
@@ -11975,7 +11980,7 @@
|
|
|
11975
11980
|
if (type === 'change') {
|
|
11976
11981
|
clearAddAndTakeAndAdjustBaoeData(productData);
|
|
11977
11982
|
}
|
|
11978
|
-
|
|
11983
|
+
_context4.next = 1;
|
|
11979
11984
|
return productDataHandler(productData, productVerifyData, personData, {
|
|
11980
11985
|
planbookId: planbookId,
|
|
11981
11986
|
eventTarget: eventTarget
|
|
@@ -11993,42 +11998,54 @@
|
|
|
11993
11998
|
eleData: eleData
|
|
11994
11999
|
});
|
|
11995
12000
|
if (errorMsg) {
|
|
11996
|
-
|
|
11997
|
-
break;
|
|
11998
|
-
}
|
|
11999
|
-
hasRevalidateFlag = (lodash.get(productData, 'mulInsOrderList') || []).some(function (ins) {
|
|
12000
|
-
return ins.revalidateFlag;
|
|
12001
|
-
});
|
|
12002
|
-
if (!(hasRevalidateFlag && $listeners.reCalculate)) {
|
|
12003
|
-
_context3.next = 3;
|
|
12001
|
+
_context4.next = 2;
|
|
12004
12002
|
break;
|
|
12005
12003
|
}
|
|
12006
|
-
|
|
12007
|
-
return
|
|
12008
|
-
|
|
12009
|
-
|
|
12010
|
-
|
|
12011
|
-
|
|
12012
|
-
|
|
12013
|
-
|
|
12014
|
-
|
|
12015
|
-
|
|
12016
|
-
|
|
12017
|
-
|
|
12018
|
-
|
|
12004
|
+
_context4.next = 2;
|
|
12005
|
+
return this.validate().then(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
|
|
12006
|
+
var hasRevalidateFlag;
|
|
12007
|
+
return _regeneratorRuntime.wrap(function (_context3) {
|
|
12008
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
12009
|
+
case 0:
|
|
12010
|
+
hasRevalidateFlag = (lodash.get(productData, 'mulInsOrderList') || []).some(function (ins) {
|
|
12011
|
+
return ins.revalidateFlag;
|
|
12012
|
+
});
|
|
12013
|
+
if (!(hasRevalidateFlag && $listeners.reCalculate)) {
|
|
12014
|
+
_context3.next = 2;
|
|
12015
|
+
break;
|
|
12016
|
+
}
|
|
12017
|
+
_context3.next = 1;
|
|
12018
|
+
return new Promise(function (resolve, reject) {
|
|
12019
|
+
_this5.$emit('reCalculate', inputData, {
|
|
12020
|
+
planbookId: planbookId,
|
|
12021
|
+
publicPbUuid: publicPbUuid,
|
|
12022
|
+
groupKey: groupKey,
|
|
12023
|
+
productKey: productKey,
|
|
12024
|
+
isIgnoreError: true,
|
|
12025
|
+
eventTarget: eventTarget
|
|
12026
|
+
}, resolve, reject);
|
|
12027
|
+
}).catch(function (err) {
|
|
12028
|
+
errorMsg = lodash.get(err, '[0].message') || lodash.get(err, 'message');
|
|
12029
|
+
});
|
|
12030
|
+
case 1:
|
|
12031
|
+
_context3.next = 2;
|
|
12032
|
+
return productDataHandler(productData, productVerifyData, personData, {
|
|
12033
|
+
planbookId: planbookId,
|
|
12034
|
+
eventTarget: eventTarget
|
|
12035
|
+
});
|
|
12036
|
+
case 2:
|
|
12037
|
+
case "end":
|
|
12038
|
+
return _context3.stop();
|
|
12039
|
+
}
|
|
12040
|
+
}, _callee3);
|
|
12041
|
+
}))).catch(function () {});
|
|
12019
12042
|
case 2:
|
|
12020
|
-
|
|
12021
|
-
return productDataHandler(productData, productVerifyData, personData, {
|
|
12022
|
-
planbookId: planbookId,
|
|
12023
|
-
eventTarget: eventTarget
|
|
12024
|
-
});
|
|
12043
|
+
return _context4.abrupt("return", errorMsg);
|
|
12025
12044
|
case 3:
|
|
12026
|
-
return _context3.abrupt("return", errorMsg);
|
|
12027
|
-
case 4:
|
|
12028
12045
|
case "end":
|
|
12029
|
-
return
|
|
12046
|
+
return _context4.stop();
|
|
12030
12047
|
}
|
|
12031
|
-
},
|
|
12048
|
+
}, _callee4, this);
|
|
12032
12049
|
}));
|
|
12033
12050
|
function changeProduct(_x, _x2) {
|
|
12034
12051
|
return _changeProduct.apply(this, arguments);
|
|
@@ -12163,16 +12180,16 @@
|
|
|
12163
12180
|
}, {
|
|
12164
12181
|
key: "validate",
|
|
12165
12182
|
value: function () {
|
|
12166
|
-
var _validate = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function
|
|
12183
|
+
var _validate = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee5() {
|
|
12167
12184
|
var $refs, filterInsuranceList, insKeys;
|
|
12168
|
-
return _regeneratorRuntime.wrap(function (
|
|
12169
|
-
while (1) switch (
|
|
12185
|
+
return _regeneratorRuntime.wrap(function (_context5) {
|
|
12186
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
12170
12187
|
case 0:
|
|
12171
12188
|
$refs = this.$refs, filterInsuranceList = this.filterInsuranceList;
|
|
12172
12189
|
insKeys = filterInsuranceList.map(function (ins) {
|
|
12173
12190
|
return ins.key;
|
|
12174
12191
|
});
|
|
12175
|
-
return
|
|
12192
|
+
return _context5.abrupt("return", new Promise(function (resolve, reject) {
|
|
12176
12193
|
setTimeout(function () {
|
|
12177
12194
|
var promises = [];
|
|
12178
12195
|
var _iterator = _createForOfIteratorHelper(insKeys),
|
|
@@ -12199,9 +12216,9 @@
|
|
|
12199
12216
|
}));
|
|
12200
12217
|
case 1:
|
|
12201
12218
|
case "end":
|
|
12202
|
-
return
|
|
12219
|
+
return _context5.stop();
|
|
12203
12220
|
}
|
|
12204
|
-
},
|
|
12221
|
+
}, _callee5, this);
|
|
12205
12222
|
}));
|
|
12206
12223
|
function validate() {
|
|
12207
12224
|
return _validate.apply(this, arguments);
|
|
@@ -12230,27 +12247,27 @@
|
|
|
12230
12247
|
}, {
|
|
12231
12248
|
key: "requiestRecommendValues",
|
|
12232
12249
|
value: function () {
|
|
12233
|
-
var _requiestRecommendValues = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function
|
|
12250
|
+
var _requiestRecommendValues = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee6() {
|
|
12234
12251
|
var self, showRecommendValue, recommendValuesCache, inputData, groupData, productData, url, calcData, reqParams, calcInputData, calcProductData;
|
|
12235
|
-
return _regeneratorRuntime.wrap(function (
|
|
12236
|
-
while (1) switch (
|
|
12252
|
+
return _regeneratorRuntime.wrap(function (_context6) {
|
|
12253
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
12237
12254
|
case 0:
|
|
12238
12255
|
self = this;
|
|
12239
12256
|
showRecommendValue = self.showRecommendValue, recommendValuesCache = self.recommendValuesCache, inputData = self.inputData, groupData = self.groupData, productData = self.productData;
|
|
12240
12257
|
if (showRecommendValue) {
|
|
12241
|
-
|
|
12258
|
+
_context6.next = 1;
|
|
12242
12259
|
break;
|
|
12243
12260
|
}
|
|
12244
|
-
return
|
|
12261
|
+
return _context6.abrupt("return");
|
|
12245
12262
|
case 1:
|
|
12246
12263
|
url = "".concat(PLANBOOK_API_HOSTNAME, "/planBook/input/calculate/recommend");
|
|
12247
|
-
|
|
12264
|
+
_context6.next = 2;
|
|
12248
12265
|
return createdProductDataToCalc(inputData, {
|
|
12249
12266
|
groupKey: groupData.key,
|
|
12250
12267
|
productKey: productData.key
|
|
12251
12268
|
}).catch(function () {});
|
|
12252
12269
|
case 2:
|
|
12253
|
-
calcData =
|
|
12270
|
+
calcData = _context6.sent;
|
|
12254
12271
|
reqParams = [];
|
|
12255
12272
|
calcInputData = calcData && JSON.parse(calcData.jd);
|
|
12256
12273
|
calcProductData = calcInputData && calcInputData.productGroupList[0].prodOrderList[0];
|
|
@@ -12264,13 +12281,13 @@
|
|
|
12264
12281
|
});
|
|
12265
12282
|
}
|
|
12266
12283
|
if (!recommendValuesCache[JSON.stringify(reqParams)]) {
|
|
12267
|
-
|
|
12284
|
+
_context6.next = 3;
|
|
12268
12285
|
break;
|
|
12269
12286
|
}
|
|
12270
12287
|
self.recommendValues = recommendValuesCache[JSON.stringify(reqParams)];
|
|
12271
|
-
return
|
|
12288
|
+
return _context6.abrupt("return");
|
|
12272
12289
|
case 3:
|
|
12273
|
-
return
|
|
12290
|
+
return _context6.abrupt("return", fetch(url, {
|
|
12274
12291
|
method: 'POST',
|
|
12275
12292
|
credentials: 'include',
|
|
12276
12293
|
headers: {
|
|
@@ -12280,10 +12297,10 @@
|
|
|
12280
12297
|
body: JSON.stringify(reqParams)
|
|
12281
12298
|
}).then(function (response) {
|
|
12282
12299
|
return response.json();
|
|
12283
|
-
}).then(function (
|
|
12284
|
-
var success =
|
|
12285
|
-
data =
|
|
12286
|
-
info =
|
|
12300
|
+
}).then(function (_ref4) {
|
|
12301
|
+
var success = _ref4.success,
|
|
12302
|
+
data = _ref4.data,
|
|
12303
|
+
info = _ref4.info;
|
|
12287
12304
|
if (!success || !data) {
|
|
12288
12305
|
self.$toast(info);
|
|
12289
12306
|
return Promise.reject();
|
|
@@ -12324,9 +12341,9 @@
|
|
|
12324
12341
|
}));
|
|
12325
12342
|
case 4:
|
|
12326
12343
|
case "end":
|
|
12327
|
-
return
|
|
12344
|
+
return _context6.stop();
|
|
12328
12345
|
}
|
|
12329
|
-
},
|
|
12346
|
+
}, _callee6, this);
|
|
12330
12347
|
}));
|
|
12331
12348
|
function requiestRecommendValues() {
|
|
12332
12349
|
return _requiestRecommendValues.apply(this, arguments);
|
package/lib/utils/index.js
CHANGED
|
@@ -9646,7 +9646,7 @@
|
|
|
9646
9646
|
max: max || Infinity,
|
|
9647
9647
|
message: message,
|
|
9648
9648
|
validator: function validator(value, rule) {
|
|
9649
|
-
return
|
|
9649
|
+
return (value || value === 0) && value >= rule.min && value <= rule.max;
|
|
9650
9650
|
}
|
|
9651
9651
|
});
|
|
9652
9652
|
}
|
|
@@ -9657,7 +9657,7 @@
|
|
|
9657
9657
|
multiple: ele.multi,
|
|
9658
9658
|
message: "\u8BF7\u8F93\u5165".concat(ele.multi, "\u500D\u6570"),
|
|
9659
9659
|
validator: function validator(value, rule) {
|
|
9660
|
-
return
|
|
9660
|
+
return (value || value === 0) && !(value % rule.multiple);
|
|
9661
9661
|
}
|
|
9662
9662
|
});
|
|
9663
9663
|
}
|
|
@@ -9918,7 +9918,7 @@
|
|
|
9918
9918
|
var titleEle = (ins.eleOrderList || []).find(function (e) {
|
|
9919
9919
|
return e.key === 'title';
|
|
9920
9920
|
});
|
|
9921
|
-
if (titleEle && groupInsuranceIdEle && !Array.isArray(
|
|
9921
|
+
if (titleEle && groupInsuranceIdEle && !Array.isArray(groupInsuranceIdEle.value)) {
|
|
9922
9922
|
titleEle.value = groupInsuranceIdEle.value === ins.key;
|
|
9923
9923
|
}
|
|
9924
9924
|
});
|
|
@@ -10444,6 +10444,14 @@
|
|
|
10444
10444
|
|
|
10445
10445
|
// 处理组合险中的逻辑,并加入到产品险种列表中
|
|
10446
10446
|
var _loop = function _loop(k) {
|
|
10447
|
+
var _oldGroupInsurance$el;
|
|
10448
|
+
var oldGroupInsurance = mulInsOrderList.find(function (ins) {
|
|
10449
|
+
return ins.key === k;
|
|
10450
|
+
});
|
|
10451
|
+
var oldGroupTitleElement = oldGroupInsurance ? (_oldGroupInsurance$el = oldGroupInsurance.eleOrderList) === null || _oldGroupInsurance$el === void 0 ? void 0 : _oldGroupInsurance$el.find(function (e) {
|
|
10452
|
+
return e.key === 'title';
|
|
10453
|
+
}) : null;
|
|
10454
|
+
var oldGroupTitleValue = oldGroupTitleElement ? oldGroupTitleElement.value : null;
|
|
10447
10455
|
var nGroupTitleEle = newGroupInsMap[k].eleOrderList.find(function (e) {
|
|
10448
10456
|
return e.key === 'title';
|
|
10449
10457
|
});
|
|
@@ -10472,9 +10480,12 @@
|
|
|
10472
10480
|
var checkedInsurance = checkedInsurances[0];
|
|
10473
10481
|
// hasRequiredIns:如果组合险中有一款是必选的,则整个组合险为选中状态
|
|
10474
10482
|
// 所有险种都不可选,则组合险不可修改且不选中。否则,组合险种可选
|
|
10475
|
-
nGroupTitleEle.value =
|
|
10483
|
+
nGroupTitleEle.value = oldGroupTitleValue === false ? oldGroupTitleValue : (nGroupInsuranceIdEle.opts || []).some(function (opt) {
|
|
10476
10484
|
return !opt.isDisabled;
|
|
10477
10485
|
});
|
|
10486
|
+
if (hasRequiredIns) {
|
|
10487
|
+
nGroupTitleEle.value = hasRequiredIns;
|
|
10488
|
+
}
|
|
10478
10489
|
nGroupTitleEle.isDisabled = hasRequiredIns || (nGroupInsuranceIdEle.opts || []).every(function (opt) {
|
|
10479
10490
|
return !!opt.isDisabled;
|
|
10480
10491
|
});
|
package/package.json
CHANGED
|
@@ -184,7 +184,7 @@ export function initElementValidateRules(ele : IInsElement, productData? : IPbPr
|
|
|
184
184
|
max: max || Infinity,
|
|
185
185
|
message: message,
|
|
186
186
|
validator(value, rule) {
|
|
187
|
-
return
|
|
187
|
+
return (value || value === 0) && value >= rule.min && value <= rule.max;
|
|
188
188
|
}
|
|
189
189
|
});
|
|
190
190
|
}
|
|
@@ -195,7 +195,7 @@ export function initElementValidateRules(ele : IInsElement, productData? : IPbPr
|
|
|
195
195
|
multiple: ele.multi,
|
|
196
196
|
message: `请输入${ele.multi}倍数`,
|
|
197
197
|
validator(value, rule) {
|
|
198
|
-
return
|
|
198
|
+
return (value || value === 0) && !(value % rule.multiple);
|
|
199
199
|
}
|
|
200
200
|
});
|
|
201
201
|
}
|
|
@@ -78,7 +78,7 @@ export async function productDataHandler(prodData : IPbProduct, prodVerifyData :
|
|
|
78
78
|
const subInsurances = (prodData.mulInsOrderList || []).filter(ins => ins.groupKey === insuranceKey)
|
|
79
79
|
subInsurances.forEach(ins => {
|
|
80
80
|
const titleEle = (ins.eleOrderList || []).find(e => e.key === 'title')
|
|
81
|
-
if (titleEle && groupInsuranceIdEle && !Array.isArray(
|
|
81
|
+
if (titleEle && groupInsuranceIdEle && !Array.isArray(groupInsuranceIdEle.value)) {
|
|
82
82
|
titleEle.value = groupInsuranceIdEle.value === ins.key
|
|
83
83
|
}
|
|
84
84
|
})
|
|
@@ -543,6 +543,9 @@ export function setGroupInsurance(prodData : IPbProduct) : IPbProduct {
|
|
|
543
543
|
|
|
544
544
|
// 处理组合险中的逻辑,并加入到产品险种列表中
|
|
545
545
|
for (let k in newGroupInsMap) {
|
|
546
|
+
const oldGroupInsurance = mulInsOrderList.find(ins => ins.key === k)
|
|
547
|
+
const oldGroupTitleElement = oldGroupInsurance ? oldGroupInsurance.eleOrderList?.find(e => e.key === 'title') : null
|
|
548
|
+
const oldGroupTitleValue = oldGroupTitleElement ? oldGroupTitleElement.value : null
|
|
546
549
|
const nGroupTitleEle = newGroupInsMap[k].eleOrderList.find(e => e.key === 'title');
|
|
547
550
|
const nGroupInsuranceIdEle = newGroupInsMap[k].eleOrderList.find(e => e.key === 'insuranceId');
|
|
548
551
|
const groupInsList = mulInsOrderList.filter((ins : IProdInsurance) => ins.groupKey == k);
|
|
@@ -559,7 +562,10 @@ export function setGroupInsurance(prodData : IPbProduct) : IPbProduct {
|
|
|
559
562
|
const checkedInsurance = checkedInsurances[0]
|
|
560
563
|
// hasRequiredIns:如果组合险中有一款是必选的,则整个组合险为选中状态
|
|
561
564
|
// 所有险种都不可选,则组合险不可修改且不选中。否则,组合险种可选
|
|
562
|
-
nGroupTitleEle.value =
|
|
565
|
+
nGroupTitleEle.value = oldGroupTitleValue === false ? oldGroupTitleValue : (nGroupInsuranceIdEle.opts || []).some(opt => !opt.isDisabled)
|
|
566
|
+
if (hasRequiredIns) {
|
|
567
|
+
nGroupTitleEle.value = hasRequiredIns
|
|
568
|
+
}
|
|
563
569
|
nGroupTitleEle.isDisabled = hasRequiredIns || (nGroupInsuranceIdEle.opts || []).every(opt => !!opt.isDisabled)
|
|
564
570
|
nGroupInsuranceIdEle.value = checkedInsurance ? checkedInsurance.key : null
|
|
565
571
|
|
package/packages/index.ts
CHANGED
|
@@ -306,12 +306,6 @@ export default class BxtProductInfo extends Vue {
|
|
|
306
306
|
if (!['title'].includes(eleData.key)) {
|
|
307
307
|
this.requiestRecommendValues();
|
|
308
308
|
}
|
|
309
|
-
setTimeout(() => {
|
|
310
|
-
const refInsuranceForm: any = _get(this.$refs, `insuranceForm${insData.key}[0]`);
|
|
311
|
-
if (refInsuranceForm) {
|
|
312
|
-
refInsuranceForm.validate(eleData.key);
|
|
313
|
-
}
|
|
314
|
-
}, 300);
|
|
315
309
|
this.$nextTick(async () => {
|
|
316
310
|
const errorMsg = await this.changeProduct(this.productData, options);
|
|
317
311
|
this.$emit(
|
|
@@ -363,31 +357,35 @@ export default class BxtProductInfo extends Vue {
|
|
|
363
357
|
eleData
|
|
364
358
|
});
|
|
365
359
|
if (!errorMsg) {
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
360
|
+
await this.validate()
|
|
361
|
+
.then(async () => {
|
|
362
|
+
const hasRevalidateFlag = (_get(productData, 'mulInsOrderList') || []).some(ins => ins.revalidateFlag);
|
|
363
|
+
if (hasRevalidateFlag && $listeners.reCalculate) {
|
|
364
|
+
await new Promise<any>((resolve, reject) => {
|
|
365
|
+
this.$emit(
|
|
366
|
+
'reCalculate',
|
|
367
|
+
inputData,
|
|
368
|
+
{
|
|
369
|
+
planbookId,
|
|
370
|
+
publicPbUuid,
|
|
371
|
+
groupKey,
|
|
372
|
+
productKey,
|
|
373
|
+
isIgnoreError: true,
|
|
374
|
+
eventTarget
|
|
375
|
+
},
|
|
376
|
+
resolve,
|
|
377
|
+
reject
|
|
378
|
+
);
|
|
379
|
+
}).catch(err => {
|
|
380
|
+
errorMsg = _get(err, '[0].message') || _get(err, 'message');
|
|
381
|
+
});
|
|
382
|
+
await productDataHandler(productData, productVerifyData, personData, {
|
|
373
383
|
planbookId,
|
|
374
|
-
publicPbUuid,
|
|
375
|
-
groupKey,
|
|
376
|
-
productKey,
|
|
377
|
-
isIgnoreError: true,
|
|
378
384
|
eventTarget
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
}).catch(err => {
|
|
384
|
-
errorMsg = _get(err, '[0].message') || _get(err, 'message');
|
|
385
|
-
});
|
|
386
|
-
await productDataHandler(productData, productVerifyData, personData, {
|
|
387
|
-
planbookId,
|
|
388
|
-
eventTarget
|
|
389
|
-
});
|
|
390
|
-
}
|
|
385
|
+
});
|
|
386
|
+
}
|
|
387
|
+
})
|
|
388
|
+
.catch(() => {});
|
|
391
389
|
}
|
|
392
390
|
return errorMsg;
|
|
393
391
|
}
|