修改相关bug
This commit is contained in:
@@ -78,9 +78,17 @@
|
||||
</template>
|
||||
|
||||
<template #companyId="scope">
|
||||
<el-tag effect="plain" type="primary">
|
||||
{{ scope.row.companyName || getCompanyName(scope.row.companyId) }}
|
||||
</el-tag>
|
||||
<el-tooltip
|
||||
v-if="scope.row.companyName || getCompanyName(scope.row.companyId)"
|
||||
:content="scope.row.companyName || getCompanyName(scope.row.companyId)"
|
||||
placement="top"
|
||||
:show-after="300"
|
||||
>
|
||||
<el-tag effect="plain" type="primary" class="truncate-tag">
|
||||
{{ scope.row.companyName || getCompanyName(scope.row.companyId) }}
|
||||
</el-tag>
|
||||
</el-tooltip>
|
||||
<span v-else class="text-gray-400">-</span>
|
||||
</template>
|
||||
|
||||
<template #status="scope">
|
||||
@@ -135,15 +143,30 @@
|
||||
</template>
|
||||
|
||||
<template #companyId="scope">
|
||||
<el-tag effect="plain" type="primary">
|
||||
{{ scope.row.companyName || getCompanyName(scope.row.companyId) }}
|
||||
</el-tag>
|
||||
<el-tooltip
|
||||
v-if="scope.row.companyName || getCompanyName(scope.row.companyId)"
|
||||
:content="scope.row.companyName || getCompanyName(scope.row.companyId)"
|
||||
placement="top"
|
||||
:show-after="300"
|
||||
>
|
||||
<el-tag effect="plain" type="primary" class="truncate-tag">
|
||||
{{ scope.row.companyName || getCompanyName(scope.row.companyId) }}
|
||||
</el-tag>
|
||||
</el-tooltip>
|
||||
<span v-else class="text-gray-400">-</span>
|
||||
</template>
|
||||
|
||||
<template #departmentName="scope">
|
||||
<el-tag v-if="scope.row.departmentName" effect="light" type="warning">
|
||||
{{ scope.row.departmentName }}
|
||||
</el-tag>
|
||||
<el-tooltip
|
||||
v-if="scope.row.departmentName"
|
||||
:content="scope.row.departmentName"
|
||||
placement="top"
|
||||
:show-after="300"
|
||||
>
|
||||
<el-tag effect="light" type="warning" class="truncate-tag">
|
||||
{{ scope.row.departmentName }}
|
||||
</el-tag>
|
||||
</el-tooltip>
|
||||
<span v-else class="text-gray-400">-</span>
|
||||
</template>
|
||||
|
||||
@@ -204,18 +227,18 @@
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公司编码" prop="companyCode">
|
||||
<el-input v-model.trim="companyForm.companyCode" placeholder="如:TECH_CORP" clearable />
|
||||
<el-input v-model.trim="companyForm.companyCode" placeholder="如:TECH_CORP" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="公司简称/名称" prop="companyName">
|
||||
<el-input v-model.trim="companyForm.companyName" placeholder="如:总公司 / 科技分部" clearable />
|
||||
<el-input v-model.trim="companyForm.companyName" placeholder="如:总公司 / 科技分部" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-form-item label="签署材料甲方全称" prop="legalName">
|
||||
<el-input v-model.trim="companyForm.legalName" placeholder="必须与契约锁中的企业名称完全一致" clearable />
|
||||
<el-input v-model.trim="companyForm.legalName" placeholder="必须与契约锁中的企业名称完全一致" maxlength="100" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
|
||||
<el-row :gutter="20">
|
||||
@@ -225,14 +248,15 @@
|
||||
v-model.trim="companyForm.unifiedSocialCreditCode"
|
||||
placeholder="18位统一社会信用代码"
|
||||
maxlength="18"
|
||||
show-word-limit
|
||||
clearable
|
||||
@input="val => companyForm.unifiedSocialCreditCode = (val || '').toUpperCase()"
|
||||
@input="val => companyForm.unifiedSocialCreditCode = (val || '').replace(/[^0-9A-Za-z]/g, '').toUpperCase()"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="法定代表人" prop="legalRepresentative">
|
||||
<el-input v-model.trim="companyForm.legalRepresentative" placeholder="法定代表人姓名" clearable />
|
||||
<el-input v-model.trim="companyForm.legalRepresentative" placeholder="法定代表人姓名" maxlength="20" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -240,7 +264,7 @@
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="联系电话" prop="contactPhone">
|
||||
<el-input v-model.trim="companyForm.contactPhone" placeholder="企业联系电话(手机或固话)" clearable />
|
||||
<el-input v-model.trim="companyForm.contactPhone" placeholder="企业联系电话(手机或固话)" maxlength="20" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
@@ -254,11 +278,11 @@
|
||||
</el-row>
|
||||
|
||||
<el-form-item label="注册地址" prop="registeredAddress">
|
||||
<el-input v-model.trim="companyForm.registeredAddress" placeholder="企业法定注册地址" clearable />
|
||||
<el-input v-model.trim="companyForm.registeredAddress" placeholder="企业法定注册地址" maxlength="150" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="companyForm.remark" type="textarea" :rows="2" placeholder="备注信息(选填)" />
|
||||
<el-input v-model="companyForm.remark" type="textarea" :rows="3" placeholder="备注信息(选填)" maxlength="300" show-word-limit />
|
||||
</el-form-item>
|
||||
|
||||
<el-divider content-position="left">契约锁电子签配置(由技术人员添加)</el-divider>
|
||||
@@ -272,12 +296,26 @@
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="默认业务分类 Id" prop="qiyuesuoCategoryId">
|
||||
<el-input v-model.trim="companyForm.qiyuesuoCategoryId" placeholder="契约锁当前公司的分类 Id" clearable />
|
||||
<el-input
|
||||
v-model.trim="companyForm.qiyuesuoCategoryId"
|
||||
placeholder="契约锁当前公司的分类 Id"
|
||||
maxlength="19"
|
||||
show-word-limit
|
||||
clearable
|
||||
@input="val => companyForm.qiyuesuoCategoryId = (val || '').replace(/\D/g, '')"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="企业印章 Id" prop="qiyuesuoSealId">
|
||||
<el-input v-model.trim="companyForm.qiyuesuoSealId" placeholder="契约锁当前公司的印章 Id" clearable />
|
||||
<el-input
|
||||
v-model.trim="companyForm.qiyuesuoSealId"
|
||||
placeholder="契约锁当前公司的印章 Id"
|
||||
maxlength="19"
|
||||
show-word-limit
|
||||
clearable
|
||||
@input="val => companyForm.qiyuesuoSealId = (val || '').replace(/\D/g, '')"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -299,12 +337,12 @@
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="部门编码" required>
|
||||
<el-input v-model="departmentForm.departmentCode" placeholder="如:DEPT_TECH" />
|
||||
<el-input v-model.trim="departmentForm.departmentCode" placeholder="如:DEPT_TECH" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="部门名称" required>
|
||||
<el-input v-model="departmentForm.departmentName" placeholder="如:技术研发部" />
|
||||
<el-input v-model.trim="departmentForm.departmentName" placeholder="如:技术研发部" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -326,7 +364,7 @@
|
||||
</el-row>
|
||||
|
||||
<el-form-item label="备注">
|
||||
<el-input v-model="departmentForm.remark" type="textarea" :rows="2" placeholder="备注信息" />
|
||||
<el-input v-model="departmentForm.remark" type="textarea" :rows="2" placeholder="备注信息" maxlength="200" show-word-limit />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
@@ -370,12 +408,12 @@
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="岗位编码" required>
|
||||
<el-input v-model="positionForm.positionCode" placeholder="如:DEV_FRONTEND" />
|
||||
<el-input v-model.trim="positionForm.positionCode" placeholder="如:DEV_FRONTEND" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="岗位名称" required>
|
||||
<el-input v-model="positionForm.positionName" placeholder="如:高级前端开发工程师" />
|
||||
<el-input v-model.trim="positionForm.positionName" placeholder="如:高级前端开发工程师" maxlength="50" show-word-limit clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -401,7 +439,7 @@
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="备注">
|
||||
<el-input v-model="positionForm.remark" type="textarea" :rows="2" placeholder="备注信息" />
|
||||
<el-input v-model="positionForm.remark" type="textarea" :rows="2" placeholder="备注信息" maxlength="200" show-word-limit />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
@@ -505,7 +543,7 @@ const companyRules = reactive<FormRules>({
|
||||
],
|
||||
companyName: [
|
||||
{ required: true, message: "请输入公司简称/名称", trigger: "blur" },
|
||||
{ min: 2, max: 100, message: "公司名称长度需在 2 到 100 个字符之间", trigger: "blur" }
|
||||
{ min: 2, max: 50, message: "公司名称长度需在 2 到 50 个字符之间", trigger: "blur" }
|
||||
],
|
||||
legalName: [
|
||||
{ required: true, message: "请输入签署材料甲方全称", trigger: "blur" },
|
||||
@@ -540,21 +578,26 @@ const companyRules = reactive<FormRules>({
|
||||
],
|
||||
registeredAddress: [
|
||||
{ required: true, message: "请输入企业法定注册地址", trigger: "blur" },
|
||||
{ min: 4, max: 200, message: "注册地址请至少输入4个字符", trigger: "blur" }
|
||||
{ min: 4, max: 150, message: "注册地址需在 4 到 150 个字符之间", trigger: "blur" }
|
||||
],
|
||||
remark: [
|
||||
{ max: 300, message: "备注不能超过 300 个字符", trigger: "blur" }
|
||||
],
|
||||
qiyuesuoCategoryId: [
|
||||
{
|
||||
pattern: /^\d*$/,
|
||||
message: "业务分类 Id 必须为纯数字",
|
||||
trigger: "blur"
|
||||
}
|
||||
},
|
||||
{ max: 19, message: "业务分类 Id 不能超过 19 位数字", trigger: "blur" }
|
||||
],
|
||||
qiyuesuoSealId: [
|
||||
{
|
||||
pattern: /^\d*$/,
|
||||
message: "企业印章 Id 必须为纯数字",
|
||||
trigger: "blur"
|
||||
}
|
||||
},
|
||||
{ max: 19, message: "企业印章 Id 不能超过 19 位数字", trigger: "blur" }
|
||||
]
|
||||
});
|
||||
const departmentForm = reactive<Partial<OnboardingDepartment>>(emptyDepartment());
|
||||
@@ -646,7 +689,8 @@ const departmentColumns: ColumnProps<OnboardingDepartment>[] = [
|
||||
prop: "departmentName",
|
||||
label: "部门名称",
|
||||
minWidth: 180,
|
||||
search: { el: "input" }
|
||||
search: { el: "input" },
|
||||
showOverflowTooltip: true
|
||||
},
|
||||
{
|
||||
prop: "sortCode",
|
||||
@@ -693,13 +737,15 @@ const positionColumns: ColumnProps<OnboardingPosition>[] = [
|
||||
prop: "positionCode",
|
||||
label: "岗位编码",
|
||||
width: 150,
|
||||
search: { el: "input" }
|
||||
search: { el: "input" },
|
||||
showOverflowTooltip: true
|
||||
},
|
||||
{
|
||||
prop: "positionName",
|
||||
label: "岗位名称",
|
||||
minWidth: 180,
|
||||
search: { el: "input" }
|
||||
search: { el: "input" },
|
||||
showOverflowTooltip: true
|
||||
},
|
||||
{
|
||||
prop: "defaultContractYears",
|
||||
@@ -831,7 +877,10 @@ async function save() {
|
||||
return ElMessage.warning("契约锁默认业务分类 Id 和企业印章 Id 必须同时填写(或均不填)");
|
||||
}
|
||||
if (categoryId && (!/^\d+$/.test(categoryId) || !/^\d+$/.test(sealId))) {
|
||||
return ElMessage.warning("契约锁默认业务分类 Id 和企业印章 Id 只能填写数字");
|
||||
return ElMessage.warning("契约锁默认业务分类 Id 和企业印章 Id 只能填写纯数字");
|
||||
}
|
||||
if (categoryId && (categoryId.length > 19 || sealId.length > 19)) {
|
||||
return ElMessage.warning("契约锁默认业务分类 Id 和企业印章 Id 不能超过 19 位数字");
|
||||
}
|
||||
companyForm.qiyuesuoCategoryId = categoryId;
|
||||
companyForm.qiyuesuoSealId = sealId;
|
||||
@@ -971,4 +1020,17 @@ onMounted(loadCompanies);
|
||||
padding-top: 3px;
|
||||
line-height: 1.25;
|
||||
}
|
||||
|
||||
.truncate-tag {
|
||||
max-width: 140px;
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.truncate-tag :deep(.el-tag__content) {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user