Merge branch 'developer' of http://code.cyweb.top/scj/zhxy/v3/cloud-ui into developer

This commit is contained in:
yaojian
2026-03-06 11:49:08 +08:00
5 changed files with 37 additions and 23 deletions

View File

@@ -503,7 +503,7 @@ const handlePreview = async (file: any) => {
const ext = fileName.split('.').pop()?.toLowerCase() || '';
// 判断是否是图片
const imageExts = ['png', 'jpg', 'jpeg', 'gif', 'bmp', 'webp'];
const imageExts = ['png', 'jpg', 'jpeg'];
// 判断是否是PDF
const isPdf = ext === 'pdf';

View File

@@ -1087,7 +1087,7 @@ const dataForm = reactive({
importApplication: '',
governmentPurchaseIntent: '',
servicePublicSelectSchool: '',
// 学校统一采购特殊规则字段5万<=金额<40万
// 学校统一采购特殊规则字段5万<=金额<30万
serviceInviteSelectSchool: '',
servicePublicSelectSchoolAuto: '',
@@ -1285,9 +1285,12 @@ const schoolUnifiedPurchaseFormDisabled = computed(() => {
// 特殊情况字典 value0否 1紧急 2单一 3进口
const isUrgentSpecial = computed(() => dataForm.isSpecial === '1');
// 是否为特殊情况非0即为特殊情况紧急、单一、进口
// 是否为特殊情况非0即为特殊情况紧急、单一、进口或预算金额>=30万
const isSpecialCase = computed(() => {
return dataForm.isSpecial && dataForm.isSpecial !== '0';
// 特殊情况或预算金额>=30万时需要选择校党委
const isSpecial = dataForm.isSpecial && dataForm.isSpecial !== '0';
const isHighBudget = dataForm.budget != null && dataForm.budget >= BUDGET_FEASIBILITY_THRESHOLD.value;
return isSpecial || isHighBudget;
});
// 第二步标题
@@ -1418,7 +1421,7 @@ watch(
{ immediate: true }
);
// 判断是否自动选择网上商城采购方式5万<=金额<40万服务类目特殊服务类目
// 判断是否自动选择网上商城采购方式5万<=金额<30万服务类目特殊服务类目
const isAutoSelectPurchaseType = computed(() => {
if (!dataForm.budget) return false;
const budget = dataForm.budget;
@@ -1430,7 +1433,8 @@ const isAutoSelectPurchaseType = computed(() => {
);
});
// 判断是否显示自动邀请比选模版5万<=金额<40万服务类目特殊服务类目
// 判断是否显示自动邀请比选模版5万<=金额<30万服务类目特殊服务类目
const showAutoInviteSelect = computed(() => {
if (!isDeptPurchase.value) return false;
if (!dataForm.budget) return false;
@@ -1443,7 +1447,7 @@ const showAutoInviteSelect = computed(() => {
);
});
// 判断是否显示学校统一采购的自动邀请比选模版5万<=金额<40万服务类目特殊服务类目
// 判断是否显示学校统一采购的自动邀请比选模版5万<=金额<30万服务类目特殊服务类目
const showAutoInviteSelectSchool = computed(() => {
if (isDeptPurchase.value) return false;
if (!dataForm.budget) return false;
@@ -1451,7 +1455,7 @@ const showAutoInviteSelectSchool = computed(() => {
return budget >= BUDGET_DEPT_PURCHASE_THRESHOLD.value && budget < BUDGET_PUBLIC_SELECT_THRESHOLD.value && isSpecialServiceCategory.value;
});
// 判断是否显示自动公开比选模版(40万<=金额<100万特殊服务类目isMallService=1、isProjectService=1
// 判断是否显示自动公开比选模版(30万<=金额<100万特殊服务类目isMallService=1、isProjectService=1
const showAutoPublicSelect = computed(() => {
if (isDeptPurchase.value) return false;
if (!dataForm.budget) return false;
@@ -1473,7 +1477,7 @@ const getRequirementFileProp = () => {
return 'purchaseRequirement';
};
// 判断学校统一采购是否需要自动设置采购方式5万<=金额<40万服务类目特殊服务类目
// 判断学校统一采购是否需要自动设置采购方式5万<=金额<30万服务类目特殊服务类目
const isAutoSelectPurchaseTypeUnion = computed(() => {
if (isDeptPurchase.value) return false;
if (!dataForm.budget) return false;
@@ -1491,8 +1495,16 @@ watch(
() => dataForm.purchaseChannel,
() => isPurchaseCenter.value,
],
() => {
// 部门自行采购 & 采购途径为”委托采购中心采购”且为新增申请阶段:采购方式隐藏且不设置
(newValues, oldValues) => {
const oldIsDeptPurchase = oldValues?.[2];
const newIsDeptPurchase = newValues?.[2];
// 从部门自行采购切换到学校统一采购时:清空采购方式(由系统自动设置或采购中心审批时选择)
if (oldIsDeptPurchase === true && newIsDeptPurchase === false) {
dataForm.purchaseType = '';
}
// 部门自行采购 & 采购途径为"委托采购中心采购"且为新增申请阶段:采购方式隐藏且不设置
// 注意:查看模式和编辑模式不清空已有的采购方式
if (isDeptPurchase.value && isEntrustCenterChannel.value && !isFlowEmbed.value && !isViewMode.value && !isEditMode.value) {
dataForm.purchaseType = '';
@@ -2060,7 +2072,7 @@ const getPurchaseTypeDeptDict = async () => {
.map((item: any) => ({
id: item.id,
label: item.label || item.dictLabel || item.name,
value: item.value || item.dictValue || item.code,
value: String(item.value || item.dictValue || item.code),
}))
.filter((item: any) => item.value !== DEPT_PURCHASE_TYPE.ENTRUST_CENTER)
: [];
@@ -2120,7 +2132,8 @@ const getPurchaseTypeUnionDict = async () => {
? res.data.map((item: any) => ({
id: item.id,
label: item.label || item.dictLabel || item.name,
value: item.value || item.dictValue || item.code,
// 确保 value 为字符串类型,避免 el-select 无法匹配
value: String(item.value || item.dictValue || item.code),
}))
: [];
} catch (err) {

View File

@@ -3,7 +3,6 @@
v-model="visible"
:title="dialogTitle"
width="90%"
:style="{ maxWidth: '1600px' }"
:close-on-click-modal="false"
destroy-on-close
class="form-iframe-dialog"