Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -108,14 +108,18 @@
|
||||
|
||||
<template #cargoCode-form>
|
||||
<el-input
|
||||
v-model="form.cargoCode"
|
||||
:model-value="getCargoCodeSuffix()"
|
||||
clearable
|
||||
maxlength="20"
|
||||
:maxlength="getCargoCodeMaxLength()"
|
||||
show-word-limit
|
||||
placeholder="请输入"
|
||||
:disabled="dialogReadonly || dialogType === 'edit'"
|
||||
@input="handleCargoCodeInput"
|
||||
/>
|
||||
>
|
||||
<template v-if="getCargoCodePrefix()" #prepend>
|
||||
{{ getCargoCodePrefix() }}
|
||||
</template>
|
||||
</el-input>
|
||||
</template>
|
||||
|
||||
<template #cargoValue-form>
|
||||
@@ -143,10 +147,6 @@
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<template #packageBrand="{ row }">
|
||||
{{ [row.packageType, row.brand].filter(Boolean).join(' / ') || '-' }}
|
||||
</template>
|
||||
|
||||
<template #menu="{ row, index }">
|
||||
<el-link
|
||||
type="primary"
|
||||
@@ -357,6 +357,14 @@ export default {
|
||||
? String(this.form.secondCargoTypeCode).slice(0, 4)
|
||||
: '';
|
||||
},
|
||||
getCargoCodeSuffix() {
|
||||
const prefix = this.getCargoCodePrefix();
|
||||
const cargoCode = String(this.form.cargoCode || '');
|
||||
return prefix && cargoCode.startsWith(prefix) ? cargoCode.slice(prefix.length) : cargoCode;
|
||||
},
|
||||
getCargoCodeMaxLength() {
|
||||
return 20 - this.getCargoCodePrefix().length;
|
||||
},
|
||||
syncCargoCodePrefix() {
|
||||
const prefix = this.getCargoCodePrefix();
|
||||
const current = String(this.form.cargoCode || '').replace(/\D/g, '');
|
||||
@@ -369,13 +377,10 @@ export default {
|
||||
},
|
||||
handleCargoCodeInput(value) {
|
||||
const prefix = this.getCargoCodePrefix();
|
||||
const input = String(value || '').replace(/\D/g, '');
|
||||
if (!prefix) {
|
||||
this.form.cargoCode = input.slice(0, 20);
|
||||
return;
|
||||
}
|
||||
const suffix = input.startsWith(prefix) ? input.slice(prefix.length) : input;
|
||||
this.form.cargoCode = `${prefix}${suffix}`.slice(0, 20);
|
||||
const suffix = String(value || '')
|
||||
.replace(/\D/g, '')
|
||||
.slice(0, this.getCargoCodeMaxLength());
|
||||
this.form.cargoCode = `${prefix}${suffix}`;
|
||||
},
|
||||
handleCargoValueInput(value) {
|
||||
const raw = String(value || '').replace(/[^\d.]/g, '');
|
||||
|
||||
@@ -394,6 +394,7 @@ export default {
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.applyDefaultDeptSearch();
|
||||
this.initDeptTree();
|
||||
},
|
||||
methods: {
|
||||
@@ -434,6 +435,18 @@ export default {
|
||||
defaultDeptId() {
|
||||
return (this.userInfo && (this.userInfo.deptId || this.userInfo.dept_id)) || '';
|
||||
},
|
||||
applyDefaultDeptSearch() {
|
||||
const deptId = this.defaultDeptId();
|
||||
const deptColumn = this.findColumn(this.option.column, 'searchDeptId');
|
||||
if (!deptId || !deptColumn) return;
|
||||
deptColumn.searchValue = deptId;
|
||||
this.query = { ...this.query, deptId };
|
||||
this.$nextTick(() => {
|
||||
if (this.$refs.crud?.searchForm) {
|
||||
this.$refs.crud.searchForm.searchDeptId = deptId;
|
||||
}
|
||||
});
|
||||
},
|
||||
resetAddressQuery() {
|
||||
this.addressQuery = {
|
||||
addressName: '',
|
||||
@@ -883,8 +896,9 @@ export default {
|
||||
},
|
||||
searchReset() {
|
||||
this.query = {};
|
||||
this.applyDefaultDeptSearch();
|
||||
this.page.currentPage = 1;
|
||||
this.onLoad(this.page);
|
||||
this.onLoad(this.page, this.query);
|
||||
},
|
||||
searchChange(params, done) {
|
||||
this.query = params;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -527,6 +527,7 @@ export default {
|
||||
created() {
|
||||
this.resetNodeRows();
|
||||
this.loadProjectOptions('');
|
||||
this.applyDefaultDeptSearch();
|
||||
this.initDeptOptions();
|
||||
},
|
||||
methods: {
|
||||
@@ -545,6 +546,21 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
defaultDeptId() {
|
||||
return (this.userInfo && (this.userInfo.deptId || this.userInfo.dept_id)) || '';
|
||||
},
|
||||
applyDefaultDeptSearch() {
|
||||
const deptId = this.defaultDeptId();
|
||||
const deptColumn = this.findColumn(this.option.column, 'searchDeptId');
|
||||
if (!deptId || !deptColumn) return;
|
||||
deptColumn.searchValue = deptId;
|
||||
this.query = { ...this.query, deptId };
|
||||
this.$nextTick(() => {
|
||||
if (this.$refs.crud?.searchForm) {
|
||||
this.$refs.crud.searchForm.searchDeptId = deptId;
|
||||
}
|
||||
});
|
||||
},
|
||||
flattenDept(tree, level = 0) {
|
||||
return tree.flatMap(item => [
|
||||
{
|
||||
@@ -953,8 +969,9 @@ export default {
|
||||
},
|
||||
searchReset() {
|
||||
this.query = {};
|
||||
this.applyDefaultDeptSearch();
|
||||
this.page.currentPage = 1;
|
||||
this.onLoad(this.page);
|
||||
this.onLoad(this.page, this.query);
|
||||
},
|
||||
searchChange(params, done) {
|
||||
this.query = params;
|
||||
|
||||
Reference in New Issue
Block a user