|
@@ -17,7 +17,7 @@
|
|
<th>典型值</th>
|
|
<th>典型值</th>
|
|
<th>类型</th>
|
|
<th>类型</th>
|
|
<th>给分项</th>
|
|
<th>给分项</th>
|
|
- <template v-if="coarseLevel">
|
|
|
|
|
|
+ <template v-if="roughLevel">
|
|
<th>粗档位</th>
|
|
<th>粗档位</th>
|
|
<th>粗档位典型值</th>
|
|
<th>粗档位典型值</th>
|
|
</template>
|
|
</template>
|
|
@@ -42,7 +42,7 @@
|
|
:min="0"
|
|
:min="0"
|
|
:max="1000"
|
|
:max="1000"
|
|
@on-blur="checkLevelValidate(level)"
|
|
@on-blur="checkLevelValidate(level)"
|
|
- @on-change="checkCoarseCodeValidate()"
|
|
|
|
|
|
+ @on-change="checkRoughCodeValidate()"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
></InputNumber>
|
|
></InputNumber>
|
|
<p v-else>{{ level.minScore }}</p>
|
|
<p v-else>{{ level.minScore }}</p>
|
|
@@ -53,7 +53,7 @@
|
|
:min="1"
|
|
:min="1"
|
|
:max="1000"
|
|
:max="1000"
|
|
@on-blur="checkLevelValidate(level)"
|
|
@on-blur="checkLevelValidate(level)"
|
|
- @on-change="checkCoarseCodeValidate()"
|
|
|
|
|
|
+ @on-change="checkRoughCodeValidate()"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
></InputNumber>
|
|
></InputNumber>
|
|
<p v-else>{{ level.maxScore }}</p>
|
|
<p v-else>{{ level.maxScore }}</p>
|
|
@@ -112,34 +112,34 @@
|
|
></Input>
|
|
></Input>
|
|
<p v-else>{{ level.scoreList }}</p>
|
|
<p v-else>{{ level.scoreList }}</p>
|
|
</td>
|
|
</td>
|
|
- <template v-if="coarseLevel">
|
|
|
|
- <!-- coarse_code -->
|
|
|
|
|
|
+ <template v-if="roughLevel">
|
|
|
|
+ <!-- rough_code -->
|
|
<td>
|
|
<td>
|
|
<Select
|
|
<Select
|
|
- v-model="level.coarseCode"
|
|
|
|
- @on-change="coarseCodeChange(level)"
|
|
|
|
|
|
+ v-model="level.roughCode"
|
|
|
|
+ @on-change="roughCodeChange(level)"
|
|
style="min-width: 80px"
|
|
style="min-width: 80px"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
>
|
|
>
|
|
<Option
|
|
<Option
|
|
- v-for="(val, key) in COARSE_LEVEL_TYPE"
|
|
|
|
|
|
+ v-for="(val, key) in ROUGH_LEVEL_TYPE"
|
|
:key="key"
|
|
:key="key"
|
|
:value="key * 1"
|
|
:value="key * 1"
|
|
>{{ val }}</Option
|
|
>{{ val }}</Option
|
|
>
|
|
>
|
|
</Select>
|
|
</Select>
|
|
- <p v-else>{{ COARSE_LEVEL_TYPE[level.coarseCode] }}</p>
|
|
|
|
|
|
+ <p v-else>{{ ROUGH_LEVEL_TYPE[level.roughCode] }}</p>
|
|
</td>
|
|
</td>
|
|
- <!-- coarse_weight -->
|
|
|
|
|
|
+ <!-- rough_weight -->
|
|
<td>
|
|
<td>
|
|
<InputNumber
|
|
<InputNumber
|
|
- v-model="level.coarseWeight"
|
|
|
|
|
|
+ v-model="level.roughWeight"
|
|
:min="1"
|
|
:min="1"
|
|
:max="100"
|
|
:max="100"
|
|
- @on-change="coarseWeightChange(level)"
|
|
|
|
|
|
+ @on-change="roughWeightChange(level)"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
v-if="level.canEdit && workDetail.modifyOtherVal"
|
|
></InputNumber>
|
|
></InputNumber>
|
|
- <p v-else>{{ level.coarseWeight }}</p>
|
|
|
|
|
|
+ <p v-else>{{ level.roughWeight }}</p>
|
|
</td>
|
|
</td>
|
|
</template>
|
|
</template>
|
|
<td>
|
|
<td>
|
|
@@ -195,12 +195,12 @@
|
|
<td>
|
|
<td>
|
|
{{ level.errors.scoreList }}
|
|
{{ level.errors.scoreList }}
|
|
</td>
|
|
</td>
|
|
- <template v-if="coarseLevel">
|
|
|
|
|
|
+ <template v-if="roughLevel">
|
|
<td>
|
|
<td>
|
|
- {{ level.errors.coarseCode }}
|
|
|
|
|
|
+ {{ level.errors.roughCode }}
|
|
</td>
|
|
</td>
|
|
<td>
|
|
<td>
|
|
- {{ level.errors.coarseWeight }}
|
|
|
|
|
|
+ {{ level.errors.roughWeight }}
|
|
</td>
|
|
</td>
|
|
</template>
|
|
</template>
|
|
<td>
|
|
<td>
|
|
@@ -223,14 +223,14 @@
|
|
:disabled="isSubmit"
|
|
:disabled="isSubmit"
|
|
>确定</Button
|
|
>确定</Button
|
|
>
|
|
>
|
|
- <Checkbox v-model="coarseLevel">coarseLevel</Checkbox>
|
|
|
|
|
|
+ <Checkbox v-model="roughLevel">roughLevel</Checkbox>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
import { workDetail, updateWork } from "@/api";
|
|
import { workDetail, updateWork } from "@/api";
|
|
-import { LEVEL_TYPE, COARSE_LEVEL_TYPE } from "@/constants/enumerate";
|
|
|
|
|
|
+import { LEVEL_TYPE, ROUGH_LEVEL_TYPE } from "@/constants/enumerate";
|
|
import schema from "async-validator";
|
|
import schema from "async-validator";
|
|
schema.warning = function() {};
|
|
schema.warning = function() {};
|
|
|
|
|
|
@@ -243,8 +243,8 @@ const initLevel = {
|
|
minScore: null,
|
|
minScore: null,
|
|
intervalScore: null,
|
|
intervalScore: null,
|
|
weight: null,
|
|
weight: null,
|
|
- coarseCode: null,
|
|
|
|
- coarseWeight: null,
|
|
|
|
|
|
+ roughCode: null,
|
|
|
|
+ roughWeight: null,
|
|
levelType: "ADMITED",
|
|
levelType: "ADMITED",
|
|
scoreList: null,
|
|
scoreList: null,
|
|
pt: null,
|
|
pt: null,
|
|
@@ -256,13 +256,13 @@ export default {
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
LEVEL_TYPE,
|
|
LEVEL_TYPE,
|
|
- COARSE_LEVEL_TYPE,
|
|
|
|
|
|
+ ROUGH_LEVEL_TYPE,
|
|
workId: this.$route.params.workId,
|
|
workId: this.$route.params.workId,
|
|
letterRelateNumber: {},
|
|
letterRelateNumber: {},
|
|
levels: [],
|
|
levels: [],
|
|
workDetail: {},
|
|
workDetail: {},
|
|
isSubmit: false,
|
|
isSubmit: false,
|
|
- coarseLevel: false
|
|
|
|
|
|
+ roughLevel: false
|
|
};
|
|
};
|
|
},
|
|
},
|
|
mounted() {
|
|
mounted() {
|
|
@@ -283,8 +283,8 @@ export default {
|
|
this.levels = data.levels.map(item => {
|
|
this.levels = data.levels.map(item => {
|
|
let nitem = { ...item };
|
|
let nitem = { ...item };
|
|
nitem.canEdit = false;
|
|
nitem.canEdit = false;
|
|
- nitem.coarseCode = null;
|
|
|
|
- nitem.coarseWeight = null;
|
|
|
|
|
|
+ nitem.roughCode = null;
|
|
|
|
+ nitem.roughWeight = null;
|
|
return nitem;
|
|
return nitem;
|
|
});
|
|
});
|
|
},
|
|
},
|
|
@@ -356,29 +356,29 @@ export default {
|
|
toDelete(index) {
|
|
toDelete(index) {
|
|
this.levels.splice(index, 1);
|
|
this.levels.splice(index, 1);
|
|
},
|
|
},
|
|
- coarseCodeChange(level) {
|
|
|
|
|
|
+ roughCodeChange(level) {
|
|
let codeWeight = {};
|
|
let codeWeight = {};
|
|
this.levels.forEach(item => {
|
|
this.levels.forEach(item => {
|
|
- if (item.coarseCode && item.coarseWeight) {
|
|
|
|
- codeWeight[item.coarseCode] = item.coarseWeight;
|
|
|
|
|
|
+ if (item.roughCode && item.roughWeight) {
|
|
|
|
+ codeWeight[item.roughCode] = item.roughWeight;
|
|
}
|
|
}
|
|
});
|
|
});
|
|
- level.coarseWeight = codeWeight[level.coarseCode] || null;
|
|
|
|
|
|
+ level.roughWeight = codeWeight[level.roughCode] || null;
|
|
|
|
|
|
- this.checkCoarseCodeValidate();
|
|
|
|
|
|
+ this.checkRoughCodeValidate();
|
|
},
|
|
},
|
|
- coarseWeightChange(level) {
|
|
|
|
|
|
+ roughWeightChange(level) {
|
|
this.levels
|
|
this.levels
|
|
.filter(
|
|
.filter(
|
|
item =>
|
|
item =>
|
|
- item.coarseCode &&
|
|
|
|
- item.coarseCode === level.coarseCode &&
|
|
|
|
|
|
+ item.roughCode &&
|
|
|
|
+ item.roughCode === level.roughCode &&
|
|
item.code !== level.code
|
|
item.code !== level.code
|
|
)
|
|
)
|
|
.forEach(item => {
|
|
.forEach(item => {
|
|
- item.coarseWeight = level.coarseWeight;
|
|
|
|
|
|
+ item.roughWeight = level.roughWeight;
|
|
});
|
|
});
|
|
- this.checkCoarseCodeValidate();
|
|
|
|
|
|
+ this.checkRoughCodeValidate();
|
|
},
|
|
},
|
|
resetError(errors, fields, fieldVals) {
|
|
resetError(errors, fields, fieldVals) {
|
|
if (!errors) return null;
|
|
if (!errors) return null;
|
|
@@ -501,23 +501,23 @@ export default {
|
|
return errors;
|
|
return errors;
|
|
});
|
|
});
|
|
},
|
|
},
|
|
- async checkCoarseCodeValidate(checkCodeRequired) {
|
|
|
|
- if (!this.coarseLevel) return;
|
|
|
|
|
|
+ async checkRoughCodeValidate(checkCodeRequired) {
|
|
|
|
+ if (!this.roughLevel) return;
|
|
let weightRanges = {};
|
|
let weightRanges = {};
|
|
this.levels.forEach(level => {
|
|
this.levels.forEach(level => {
|
|
- if (!level.coarseCode) return;
|
|
|
|
- let range = weightRanges[level.coarseCode] || {
|
|
|
|
|
|
+ if (!level.roughCode) return;
|
|
|
|
+ let range = weightRanges[level.roughCode] || {
|
|
sn: 100,
|
|
sn: 100,
|
|
en: 0
|
|
en: 0
|
|
};
|
|
};
|
|
range.sn = Math.min(range.sn, level.minScore);
|
|
range.sn = Math.min(range.sn, level.minScore);
|
|
range.en = Math.max(range.en, level.maxScore);
|
|
range.en = Math.max(range.en, level.maxScore);
|
|
- weightRanges[level.coarseCode] = range;
|
|
|
|
|
|
+ weightRanges[level.roughCode] = range;
|
|
});
|
|
});
|
|
|
|
|
|
- const coarseCodeValidate = level => {
|
|
|
|
|
|
+ const roughCodeValidate = level => {
|
|
const descriptor = {
|
|
const descriptor = {
|
|
- coarseCode: {
|
|
|
|
|
|
+ roughCode: {
|
|
validator: (rule, value, callback) => {
|
|
validator: (rule, value, callback) => {
|
|
if (!checkCodeRequired && !value) return callback();
|
|
if (!checkCodeRequired && !value) return callback();
|
|
|
|
|
|
@@ -532,16 +532,16 @@ export default {
|
|
|
|
|
|
if (pos > 0) {
|
|
if (pos > 0) {
|
|
const prevLevel = this.levels[pos - 1];
|
|
const prevLevel = this.levels[pos - 1];
|
|
- if (prevLevel && prevLevel.coarseCode) {
|
|
|
|
- const codeDis = value - prevLevel.coarseCode;
|
|
|
|
|
|
+ if (prevLevel && prevLevel.roughCode) {
|
|
|
|
+ const codeDis = value - prevLevel.roughCode;
|
|
if (codeDis < 0 || codeDis > 1) {
|
|
if (codeDis < 0 || codeDis > 1) {
|
|
return callback(new Error(`请保持粗档位连续`));
|
|
return callback(new Error(`请保持粗档位连续`));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// const nextLevel = this.levels[pos + 1];
|
|
// const nextLevel = this.levels[pos + 1];
|
|
- // if (nextLevel && nextLevel.coarseCode) {
|
|
|
|
- // const codeDis = nextLevel.coarseCode - value;
|
|
|
|
|
|
+ // if (nextLevel && nextLevel.roughCode) {
|
|
|
|
+ // const codeDis = nextLevel.roughCode - value;
|
|
// if (codeDis < 0 || codeDis > 1) {
|
|
// if (codeDis < 0 || codeDis > 1) {
|
|
// return callback(new Error(`请保持粗档位连续`));
|
|
// return callback(new Error(`请保持粗档位连续`));
|
|
// }
|
|
// }
|
|
@@ -551,17 +551,17 @@ export default {
|
|
callback();
|
|
callback();
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- coarseWeight: {
|
|
|
|
|
|
+ roughWeight: {
|
|
validator: (rule, value, callback) => {
|
|
validator: (rule, value, callback) => {
|
|
if (!checkCodeRequired) {
|
|
if (!checkCodeRequired) {
|
|
- if (level.coarseCode && !value)
|
|
|
|
|
|
+ if (level.roughCode && !value)
|
|
return callback(new Error(`请输入粗档位典型值`));
|
|
return callback(new Error(`请输入粗档位典型值`));
|
|
- if (!level.coarseCode) return callback();
|
|
|
|
|
|
+ if (!level.roughCode) return callback();
|
|
}
|
|
}
|
|
if (checkCodeRequired && !value)
|
|
if (checkCodeRequired && !value)
|
|
return callback(new Error(`请输入粗档位典型值`));
|
|
return callback(new Error(`请输入粗档位典型值`));
|
|
|
|
|
|
- const range = weightRanges[level.coarseCode];
|
|
|
|
|
|
+ const range = weightRanges[level.roughCode];
|
|
if (value < range.sn || value > range.en)
|
|
if (value < range.sn || value > range.en)
|
|
return callback(
|
|
return callback(
|
|
new Error(`粗档位典型值只能介于${range.sn}和${range.en}之间`)
|
|
new Error(`粗档位典型值只能介于${range.sn}和${range.en}之间`)
|
|
@@ -593,7 +593,7 @@ export default {
|
|
});
|
|
});
|
|
};
|
|
};
|
|
|
|
|
|
- const validatorAll = this.levels.map(level => coarseCodeValidate(level));
|
|
|
|
|
|
+ const validatorAll = this.levels.map(level => roughCodeValidate(level));
|
|
const result = await Promise.all(validatorAll);
|
|
const result = await Promise.all(validatorAll);
|
|
const hasUnvalidate = result.some(item => !!item);
|
|
const hasUnvalidate = result.some(item => !!item);
|
|
|
|
|
|
@@ -607,7 +607,7 @@ export default {
|
|
let hasUnvalidate = result.some(item => !!item);
|
|
let hasUnvalidate = result.some(item => !!item);
|
|
if (hasUnvalidate) return;
|
|
if (hasUnvalidate) return;
|
|
|
|
|
|
- hasUnvalidate = await this.checkCoarseCodeValidate(true);
|
|
|
|
|
|
+ hasUnvalidate = await this.checkRoughCodeValidate(true);
|
|
if (hasUnvalidate) return;
|
|
if (hasUnvalidate) return;
|
|
|
|
|
|
if (!this.checkLevelCodeIsContinuous()) {
|
|
if (!this.checkLevelCodeIsContinuous()) {
|