|
|
@@ -41,14 +41,14 @@
|
|
|
<el-form ref="formRef" :model="form" :rules="rules" label-width="110px">
|
|
|
<el-row :gutter="16">
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="公司" prop="companyRefId">
|
|
|
+ <el-form-item v-if="false" label="公司" prop="companyRefId">
|
|
|
<el-select v-model="form.companyRefId" clearable filterable placeholder="请选择公司" style="width: 100%">
|
|
|
<el-option v-for="item in companyOptions" :key="item.id" :label="item.name || item.code || `${item.id}`" :value="item.id" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="工厂" prop="factoryRefId">
|
|
|
+ <el-form-item v-if="false" label="工厂" prop="factoryRefId">
|
|
|
<el-select v-model="form.factoryRefId" clearable filterable placeholder="请选择工厂" style="width: 100%" :disabled="!form.companyRefId">
|
|
|
<el-option v-for="item in formFactoryOptions" :key="item.id" :label="item.name || item.code || `${item.id}`" :value="item.id" />
|
|
|
</el-select>
|
|
|
@@ -100,10 +100,20 @@ const saving = ref(false);
|
|
|
const formRef = ref<FormInstance>();
|
|
|
|
|
|
function emptyForm() {
|
|
|
- return { companyRefId: undefined, factoryRefId: undefined, domainCode: '', customer: '', type: '', waterRules: '', waterLen: null as number | null, separator: '', firmLength: null as number | null, firmString1: '', firmStringLen1: null, firmString1Note: '', firmString2: '', firmStringLen2: null, firmString2Note: '', firmString3: '', firmStringLen3: null, firmString3Note: '', firmString4: '', firmStringLen4: null, firmString4Note: '', firmString5: '', firmStringLen5: null, firmString5Note: '', firmString6: '', firmStringLen6: null, firmString6Note: '', firmString7: '', firmStringLen7: null, firmString7Note: '', firmString8: '', firmStringLen8: null, firmString8Note: '', firmString9: '', firmStringLen9: null, firmString9Note: '', firmString10: '', firmStringLen10: null, firmString10Note: '', firmString11: '', firmStringLen11: null, firmString11Note: '', firmString12: '', firmStringLen12: null, firmString12Note: '' };
|
|
|
+ return { companyRefId: undefined as string | undefined, factoryRefId: undefined as string | undefined, domainCode: '', customer: '', type: '', waterRules: '', waterLen: null as number | null, separator: '', firmLength: null as number | null, firmString1: '', firmStringLen1: null, firmString1Note: '', firmString2: '', firmStringLen2: null, firmString2Note: '', firmString3: '', firmStringLen3: null, firmString3Note: '', firmString4: '', firmStringLen4: null, firmString4Note: '', firmString5: '', firmStringLen5: null, firmString5Note: '', firmString6: '', firmStringLen6: null, firmString6Note: '', firmString7: '', firmStringLen7: null, firmString7Note: '', firmString8: '', firmStringLen8: null, firmString8Note: '', firmString9: '', firmStringLen9: null, firmString9Note: '', firmString10: '', firmStringLen10: null, firmString10Note: '', firmString11: '', firmStringLen11: null, firmString11Note: '', firmString12: '', firmStringLen12: null, firmString12Note: '' };
|
|
|
}
|
|
|
const form = reactive(emptyForm());
|
|
|
|
|
|
+// 单甲方私有云口径:公司/工厂不在前端启用,统一注入全局默认组织(不依赖登录账号 tenant_id)
|
|
|
+const DEFAULT_COMPANY_REF_ID = '1329900200001';
|
|
|
+const DEFAULT_FACTORY_REF_ID = '1329900200002';
|
|
|
+function isMissingOrLegacyOrgRef(v: unknown): boolean {
|
|
|
+ return v == null || v === '' || v === 0 || v === '0' || v === 1 || v === '1';
|
|
|
+}
|
|
|
+function applyDefaultOrg() {
|
|
|
+ if (isMissingOrLegacyOrgRef(form.companyRefId)) form.companyRefId = DEFAULT_COMPANY_REF_ID;
|
|
|
+ if (isMissingOrLegacyOrgRef(form.factoryRefId)) form.factoryRefId = DEFAULT_FACTORY_REF_ID;
|
|
|
+}
|
|
|
const companyOptions = ref<OrgOption[]>([]);
|
|
|
const factoryOptions = ref<OrgOption[]>([]);
|
|
|
const formFactoryOptions = computed(() => {
|
|
|
@@ -111,15 +121,7 @@ const formFactoryOptions = computed(() => {
|
|
|
return factoryOptions.value.filter((item) => item.pid === form.companyRefId);
|
|
|
});
|
|
|
|
|
|
-const validateOrgRequired = (msg: string) => (_r: unknown, v: unknown, cb: (e?: Error) => void) => {
|
|
|
- const s = v == null ? '' : String(v);
|
|
|
- if (s === '' || s === '0') cb(new Error(msg));
|
|
|
- else cb();
|
|
|
-};
|
|
|
-
|
|
|
const rules: FormRules = {
|
|
|
- companyRefId: [{ validator: validateOrgRequired('请选择公司'), trigger: 'change' }],
|
|
|
- factoryRefId: [{ validator: validateOrgRequired('请选择工厂'), trigger: 'change' }],
|
|
|
customer: [{ required: true, message: '请填写客户/供应商编码', trigger: 'blur' }],
|
|
|
type: [{ required: true, message: '请填写条码类型', trigger: 'blur' }],
|
|
|
};
|
|
|
@@ -150,10 +152,7 @@ function openEdit(row: S0BarcodeRuleRow) {
|
|
|
}
|
|
|
async function submitForm() {
|
|
|
await formRef.value?.validate();
|
|
|
- if (!form.companyRefId || form.companyRefId === '0' || !form.factoryRefId || form.factoryRefId === '0') {
|
|
|
- ElMessage.warning('请选择公司和工厂');
|
|
|
- return;
|
|
|
- }
|
|
|
+ applyDefaultOrg();
|
|
|
saving.value = true;
|
|
|
try {
|
|
|
if (editingId.value) { await s0BarcodeRulesApi.update(editingId.value, { ...form }); ElMessage.success('已保存'); }
|