@nstc-business/imes 1.0.29 → 1.0.31
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/package.json
CHANGED
|
@@ -173,7 +173,8 @@
|
|
|
173
173
|
<vxe-column
|
|
174
174
|
v-if="showModifyReasonCol"
|
|
175
175
|
min-width="260"
|
|
176
|
-
align="
|
|
176
|
+
align="left"
|
|
177
|
+
header-align="center"
|
|
177
178
|
>
|
|
178
179
|
<template #header>
|
|
179
180
|
<div>
|
|
@@ -187,6 +188,7 @@
|
|
|
187
188
|
<template #default="{ row }">
|
|
188
189
|
<el-input
|
|
189
190
|
v-if="showManualReason(row)"
|
|
191
|
+
class="reason-input"
|
|
190
192
|
type="textarea"
|
|
191
193
|
v-title
|
|
192
194
|
:class="{ reasonRequireRed: manualReasonRed(row) }"
|
|
@@ -199,6 +201,7 @@
|
|
|
199
201
|
/>
|
|
200
202
|
<el-input
|
|
201
203
|
v-if="isQualFn(row)"
|
|
204
|
+
class="reason-input"
|
|
202
205
|
type="textarea"
|
|
203
206
|
v-title
|
|
204
207
|
:show-overflow-tooltip="true"
|
|
@@ -211,6 +214,7 @@
|
|
|
211
214
|
/>
|
|
212
215
|
<el-input
|
|
213
216
|
v-else-if="showAdjustReason(row)"
|
|
217
|
+
class="reason-input"
|
|
214
218
|
type="textarea"
|
|
215
219
|
v-title
|
|
216
220
|
:class="{ reasonRequireRed: adjustReasonRed(row) }"
|
|
@@ -411,6 +415,17 @@ export default {
|
|
|
411
415
|
.full-w {
|
|
412
416
|
width: 100%;
|
|
413
417
|
}
|
|
418
|
+
.reason-input {
|
|
419
|
+
display: block;
|
|
420
|
+
width: 100%;
|
|
421
|
+
box-sizing: border-box;
|
|
422
|
+
|
|
423
|
+
::v-deep .el-textarea__inner {
|
|
424
|
+
width: 100%;
|
|
425
|
+
box-sizing: border-box;
|
|
426
|
+
resize: vertical;
|
|
427
|
+
}
|
|
428
|
+
}
|
|
414
429
|
.select-top {
|
|
415
430
|
margin-top: 2px;
|
|
416
431
|
height: 14px;
|
|
@@ -202,7 +202,8 @@
|
|
|
202
202
|
<vxe-column
|
|
203
203
|
v-if="showModifyReasonCol"
|
|
204
204
|
min-width="260"
|
|
205
|
-
align="
|
|
205
|
+
align="left"
|
|
206
|
+
header-align="center"
|
|
206
207
|
>
|
|
207
208
|
<template #header>
|
|
208
209
|
<div>
|
|
@@ -216,6 +217,7 @@
|
|
|
216
217
|
<template #default="{ row }">
|
|
217
218
|
<el-input
|
|
218
219
|
v-if="showManualModifiedReasonFn(row)"
|
|
220
|
+
class="reason-input"
|
|
219
221
|
type="textarea"
|
|
220
222
|
v-title
|
|
221
223
|
:class="{ reasonRequireRed: manualReasonRequireRedFn(row) }"
|
|
@@ -228,6 +230,7 @@
|
|
|
228
230
|
/>
|
|
229
231
|
<el-input
|
|
230
232
|
v-if="showAdjustModifiedReasonFn(row)"
|
|
233
|
+
class="reason-input"
|
|
231
234
|
type="textarea"
|
|
232
235
|
v-title
|
|
233
236
|
:class="{ reasonRequireRed: adjustReasonRequireRedFn(row) }"
|
|
@@ -376,7 +379,8 @@
|
|
|
376
379
|
<vxe-column
|
|
377
380
|
v-if="showModifyReasonCol"
|
|
378
381
|
min-width="260"
|
|
379
|
-
align="
|
|
382
|
+
align="left"
|
|
383
|
+
header-align="center"
|
|
380
384
|
>
|
|
381
385
|
<template #header>
|
|
382
386
|
<div>
|
|
@@ -390,6 +394,7 @@
|
|
|
390
394
|
<template #default="{ row }">
|
|
391
395
|
<el-input
|
|
392
396
|
v-if="showManualModifiedReasonFn(row)"
|
|
397
|
+
class="reason-input"
|
|
393
398
|
type="textarea"
|
|
394
399
|
v-title
|
|
395
400
|
:class="{ reasonRequireRed: manualReasonRequireRedFn(row) }"
|
|
@@ -402,6 +407,7 @@
|
|
|
402
407
|
/>
|
|
403
408
|
<el-input
|
|
404
409
|
v-if="showAdjustModifiedReasonFn(row)"
|
|
410
|
+
class="reason-input"
|
|
405
411
|
type="textarea"
|
|
406
412
|
v-title
|
|
407
413
|
:class="{ reasonRequireRed: adjustReasonRequireRedFn(row) }"
|
|
@@ -750,6 +756,17 @@ export default {
|
|
|
750
756
|
.full-w {
|
|
751
757
|
width: 100%;
|
|
752
758
|
}
|
|
759
|
+
.reason-input {
|
|
760
|
+
display: block;
|
|
761
|
+
width: 100%;
|
|
762
|
+
box-sizing: border-box;
|
|
763
|
+
|
|
764
|
+
::v-deep .el-textarea__inner {
|
|
765
|
+
width: 100%;
|
|
766
|
+
box-sizing: border-box;
|
|
767
|
+
resize: vertical;
|
|
768
|
+
}
|
|
769
|
+
}
|
|
753
770
|
.row-serial {
|
|
754
771
|
color: #606266;
|
|
755
772
|
font-variant-numeric: tabular-nums;
|
|
@@ -505,3 +505,30 @@ export function normalizeTree(nodes, leafList = [], qualList = []) {
|
|
|
505
505
|
})
|
|
506
506
|
return { leafList, qualList }
|
|
507
507
|
}
|
|
508
|
+
|
|
509
|
+
function hasEchoValue(val) {
|
|
510
|
+
return val !== '' && val != null && val !== undefined
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
/**
|
|
514
|
+
* 测算结果回写到输入框的值。
|
|
515
|
+
* 手工填报必须回显 indicatorResult;不能用 modifiedVal。
|
|
516
|
+
* 后端日志在未调整时会把 null 格式化成 0,若写回 value 会把已填指标值冲成 0。
|
|
517
|
+
* 时间:2026-09-05;人员:AI && 徐红飞;入参:target/source 节点;出参:回显值或 undefined;方法内容:按取数来源/调整项选择回显字段
|
|
518
|
+
*/
|
|
519
|
+
export function resolveCalcEchoValue(target, source) {
|
|
520
|
+
if (!target || !source) return undefined
|
|
521
|
+
if (target.sourceType === 3 && !isQualIndicator(target)) {
|
|
522
|
+
if (hasEchoValue(source.indicatorResult)) return source.indicatorResult
|
|
523
|
+
return undefined
|
|
524
|
+
}
|
|
525
|
+
if (target.itemType !== 22 && Number(target.modifyRank) === 2 && hasEchoValue(source.modifiedVal)) {
|
|
526
|
+
return source.modifiedVal
|
|
527
|
+
}
|
|
528
|
+
return undefined
|
|
529
|
+
}
|
|
530
|
+
|
|
531
|
+
/** 非「调整指标值」时,日志里的 modifiedVal=0 不是真实调整,不能覆盖到节点 */
|
|
532
|
+
export function shouldApplyModifiedVal(target, source) {
|
|
533
|
+
return !!(target && source && Number(target.modifyRank) === 2 && hasEchoValue(source.modifiedVal))
|
|
534
|
+
}
|
|
@@ -215,7 +215,9 @@ import {
|
|
|
215
215
|
isStatRootModel as checkStatRootModel,
|
|
216
216
|
subModelResultText as formatSubModelResult,
|
|
217
217
|
saveSubModelValueText,
|
|
218
|
-
formatScoreText
|
|
218
|
+
formatScoreText,
|
|
219
|
+
resolveCalcEchoValue,
|
|
220
|
+
shouldApplyModifiedVal
|
|
219
221
|
} from './helpers'
|
|
220
222
|
import { preprocessStatIndicatorDeepList, mergeStatModelNode, statItemChildren } from './statModelHelper'
|
|
221
223
|
import { withRequestTimestamp } from './api'
|
|
@@ -1290,7 +1292,6 @@ export default {
|
|
|
1290
1292
|
'calcLogs',
|
|
1291
1293
|
'relFormula',
|
|
1292
1294
|
'displayFormula',
|
|
1293
|
-
'modifiedVal',
|
|
1294
1295
|
'modifiedResult'
|
|
1295
1296
|
]
|
|
1296
1297
|
fields.forEach(key => {
|
|
@@ -1298,8 +1299,13 @@ export default {
|
|
|
1298
1299
|
this.$set(target, key, source[key])
|
|
1299
1300
|
}
|
|
1300
1301
|
})
|
|
1301
|
-
|
|
1302
|
-
|
|
1302
|
+
// 未调整时后端 modifiedVal 常为 0,不能覆盖手工填报的指标值
|
|
1303
|
+
if (shouldApplyModifiedVal(target, source)) {
|
|
1304
|
+
this.$set(target, 'modifiedVal', source.modifiedVal)
|
|
1305
|
+
}
|
|
1306
|
+
const echoValue = resolveCalcEchoValue(target, source)
|
|
1307
|
+
if (echoValue !== undefined) {
|
|
1308
|
+
this.$set(target, 'value', echoValue)
|
|
1303
1309
|
}
|
|
1304
1310
|
},
|
|
1305
1311
|
|