This commit is contained in:
吴红兵
2026-03-04 23:20:40 +08:00
parent 7f61c9bdce
commit 48b31285c8
3 changed files with 108 additions and 32 deletions

View File

@@ -205,7 +205,7 @@
<upload-file
v-model="dataForm.businessNegotiationTable"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.businessNegotiationTable }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('businessNegotiationTable')"
@@ -226,7 +226,7 @@
<upload-file
v-model="dataForm.marketPurchaseMinutes"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.marketPurchaseMinutes }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('marketPurchaseMinutes')"
@@ -247,7 +247,7 @@
<upload-file
v-model="dataForm.onlineMallMaterials"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.onlineMallMaterials }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('onlineMallMaterials')"
@@ -259,7 +259,7 @@
<upload-file
v-model="dataForm.inquiryTemplate"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.inquiryTemplate }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('inquiryTemplate')"
@@ -284,7 +284,7 @@
<upload-file
v-model="dataForm.deptSelfMeetingMinutes"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.deptSelfMeetingMinutes }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('deptSelfMeetingMinutes')"
@@ -320,7 +320,7 @@
<upload-file
v-model="dataForm.serviceDirectSelect"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.serviceDirectSelect }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('serviceDirectSelect')"
@@ -351,7 +351,7 @@
<upload-file
v-model="dataForm.serviceInviteSelect"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.serviceInviteSelect }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('serviceInviteSelect')"
@@ -376,7 +376,7 @@
<upload-file
v-model="dataForm.purchaseRequirementTemplate"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.purchaseRequirementTemplate }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('purchaseRequirementTemplate')"
@@ -405,7 +405,7 @@
<upload-file
v-model="dataForm.serviceInviteSelect"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.serviceInviteSelect }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('serviceInviteSelect')"
@@ -426,7 +426,7 @@
<upload-file
v-model="dataForm.servicePublicSelectAuto"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.servicePublicSelectAuto }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('servicePublicSelectAuto')"
@@ -556,7 +556,7 @@
<upload-file
v-model="dataForm.feasibilityReport"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.feasibilityReport }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('feasibilityReport')"
@@ -587,7 +587,7 @@
<upload-file
v-model="dataForm.meetingMinutes"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.meetingMinutes }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('meetingMinutes')"
@@ -599,7 +599,7 @@
<upload-file
v-model="dataForm.meetingMinutesUrgent"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.meetingMinutesUrgent }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('meetingMinutesUrgent')"
@@ -611,7 +611,7 @@
<upload-file
v-model="dataForm.singleSourceProof"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.singleSourceProof }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('singleSourceProof')"
@@ -632,7 +632,7 @@
<upload-file
v-model="dataForm.meetingMinutesSingle"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.meetingMinutesSingle }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('meetingMinutesSingle')"
@@ -644,7 +644,7 @@
<upload-file
v-model="dataForm.importApplication"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.importApplication }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('importApplication')"
@@ -665,7 +665,7 @@
<upload-file
v-model="dataForm.meetingMinutesImport"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.meetingMinutesImport }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('meetingMinutesImport')"
@@ -693,7 +693,7 @@
<upload-file
v-model="dataForm.serviceInviteSelectSchool"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.serviceInviteSelectSchool }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('serviceInviteSelectSchool')"
@@ -712,7 +712,7 @@
<upload-file
v-model="dataForm.servicePublicSelectSchoolAuto"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.servicePublicSelectSchoolAuto }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('servicePublicSelectSchoolAuto')"
@@ -732,7 +732,7 @@
<upload-file
v-model="dataForm.servicePublicSelectSchool"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.servicePublicSelectSchool }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('servicePublicSelectSchool')"
@@ -751,7 +751,7 @@
<upload-file
v-model="dataForm.purchaseRequirement"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.purchaseRequirement }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('purchaseRequirement')"
@@ -773,7 +773,7 @@
<upload-file
v-model="dataForm.governmentPurchaseIntent"
:limit="1"
:file-type="['pdf']"
:file-type="['doc', 'docx', 'pdf']"
:data="{ fileType: FILE_TYPE_MAP.governmentPurchaseIntent }"
upload-file-url="/purchase/purchasingfiles/upload"
:disabled="flowFieldDisabled('governmentPurchaseIntent')"
@@ -967,6 +967,7 @@ import { addObj, tempStore, getObj, editObj, getApplyFiles } from '/@/api/purcha
import { getTree } from '/@/api/purchase/purchasingcategory';
import { getDicts } from '/@/api/admin/dict';
import { useMessage } from '/@/hooks/message';
import { useUserInfo } from '/@/stores/userInfo';
import { usePurchaseRulesSingleton } from '/@/hooks/usePurchaseRules';
import UploadFile from '/@/components/Upload/index.vue';
import other from '/@/utils/other';
@@ -980,6 +981,7 @@ import * as orderVue from '/@/api/order/order-key-vue';
/** 采购中心角色编码:审批时仅该角色可编辑采购方式/采购形式 */
const PURCHASE_CENTER_ROLE_CODE = 'PURCHASE_CENTER';
const PURCHASE_DEPT_APPLY_ROLE_CODE = 'ROLE_PURCHASE_DEPT_APPLY';
// 兼容流程 dynamic-link 引用:接收 currJob / currElTab并支持 handleJob 事件
const props = defineProps({
@@ -1041,9 +1043,15 @@ function flowFieldDisabled(_key: string) {
/** 当前用户是否为申请人(在流程中可编辑) */
const isApplicant = computed(() => {
if (!dataForm.createUser) return false;
const currentUser = Session.getUser() || {};
return dataForm.createUser === currentUser.userId || dataForm.createUser === currentUser.username;
const stores = useUserInfo();
const currentUser = stores.userInfos?.user || {};
console.log(currentUser)
if (!dataForm.createBy) return false;
// const stores = useUserInfo();
// const currentUser = stores.userInfos?.user || {};
return dataForm.createBy === currentUser.username;
});
// 定义变量内容
@@ -1066,6 +1074,7 @@ const dataForm = reactive({
categoryCode: '',
remark: '',
status: '',
createBy: '', // 创建人用户名,用于判断是否为申请人
// 部门自行采购字段
businessNegotiationTable: '',
marketPurchaseMinutes: '',
@@ -1762,6 +1771,7 @@ async function loadDetail(applyId: string | number) {
categoryCode: detail.categoryCode ?? '',
remark: detail.remark ?? '',
status: detail.status ?? '',
createBy: detail.createBy ?? '',
businessNegotiationTable: detail.businessNegotiationTable ?? '',
marketPurchaseMinutes: detail.marketPurchaseMinutes ?? '',
onlineMallMaterials: detail.onlineMallMaterials ?? '',
@@ -1929,6 +1939,7 @@ async function flowSubmitForm() {
'purchaseRequirementTemplate',
'serviceInviteSelect',
'servicePublicSelectAuto',
'deptSelfMeetingMinutes', // 部门自行采购会议纪要
'purchaseRequirement',
'meetingMinutes',
'feasibilityReport',