更新采购申请

This commit is contained in:
吴红兵
2026-03-01 16:21:26 +08:00
parent efc5dda78a
commit 22fc35b87e
93 changed files with 45 additions and 45 deletions

View File

@@ -117,7 +117,7 @@ import assetBF from "@/page/task/assetBF.vue";
import {hasTimeOut} from "@/api/asset/assets/assetassets"; import {hasTimeOut} from "@/api/asset/assets/assetassets";
import {fetchListPage} from "@/api/asset/assetinbound/assetinbound"; import {fetchListPage} from "@/api/asset/assetinbound/assetinbound";
import {pageIndex} from "@/api/asset/assetoutbound/assetoutbound"; import {pageIndex} from "@/api/asset/assetoutbound/assetoutbound";
import {waitingList} from "@/api/finance/purchasinglypj"; import {waitingList} from "@/api/purchase/purchasinglypj";
import {fetchList} from "@/api/stuwork/schoolbully"; import {fetchList} from "@/api/stuwork/schoolbully";
import trainProjectApply from "@/page/task/trainProjectApply.vue"; import trainProjectApply from "@/page/task/trainProjectApply.vue";
import trainProjectArrivedApply from "@/page/task/trainProjectArrivedApply.vue"; import trainProjectArrivedApply from "@/page/task/trainProjectArrivedApply.vue";

View File

@@ -16,9 +16,9 @@ import SignInput from "./sign/index.vue";
// vite glob导入 // vite glob导入
const modules: Record<string, () => Promise<unknown>> = import.meta.glob( const modules: Record<string, () => Promise<unknown>> = import.meta.glob(
['../../views/jsonflow/*/*.vue', '../../views/order/*/*.vue', ['../../views/jsonflow/*/*.vue', '../../views/order/*/*.vue',
'../../views/purchase/*/*.vue', '../../views/finance/purchasingrequisition/add.vue', '../../views/purchase/*/*.vue', '../../views/purchase/purchasingrequisition/add.vue',
'../../views/finance/purchasingrequisition/implement.vue'] '../../views/purchase/purchasingrequisition/implement.vue']
) )
/** /**

View File

@@ -100,17 +100,17 @@ export const staticRoutes: Array<RouteRecordRaw> = [
}, },
}, },
{ {
path: '/finance/purchasingrequisition/add', path: '/purchase/purchasingrequisition/add',
name: 'purchasingrequisition.add', name: 'purchasingrequisition.add',
component: () => import('/@/views/finance/purchasingrequisition/add.vue'), component: () => import('/@/views/purchase/purchasingrequisition/add.vue'),
meta: { meta: {
isAuth: false, // 不需要认证,纯页面展示 isAuth: false, // 不需要认证,纯页面展示
}, },
}, },
{ {
path: '/finance/purchasingrequisition/implement', path: '/purchase/purchasingrequisition/implement',
name: 'purchasingrequisition.implement', name: 'purchasingrequisition.implement',
component: () => import('/@/views/finance/purchasingrequisition/implement.vue'), component: () => import('/@/views/purchase/purchasingrequisition/implement.vue'),
meta: { meta: {
isAuth: false, // 供流程 iframe 嵌入 isAuth: false, // 供流程 iframe 嵌入
}, },

View File

@@ -1,18 +1,18 @@
<template> <template>
<div class="fixed bottom-0 right-0 z-10 flex flex-col items-center mb-16 w-[160px]"> <div class="fixed bottom-0 right-0 z-10 flex flex-col items-center mb-16 w-[160px]">
<div class="group"> <!-- <div class="group">-->
<div class="relative transition-transform duration-300 transform group-hover:scale-110 group-hover:-translate-y-1"> <!-- <div class="relative transition-transform duration-300 transform group-hover:scale-110 group-hover:-translate-y-1">-->
<img <!-- <img-->
class="w-24 h-24 rounded-lg ring-gray-200 dark:ring-slate-700 dark:bg-slate-800" <!-- class="w-24 h-24 rounded-lg ring-gray-200 dark:ring-slate-700 dark:bg-slate-800"-->
:src="!themeConfig.miniQr ? miniQr : baseURL + themeConfig.miniQr" <!-- :src="!themeConfig.miniQr ? miniQr : baseURL + themeConfig.miniQr"-->
:alt="t('scan.wechatApp')" <!-- :alt="t('scan.wechatApp')"-->
/> <!-- />-->
</div> <!-- </div>-->
<!-- 底部文字 --> <!-- &lt;!&ndash; 底部文字 &ndash;&gt;-->
<div class="mt-2"> <!-- <div class="mt-2">-->
<p class="text-xs text-gray-400 dark:text-slate-500">{{ t('scan.wechatApp') }}</p> <!-- <p class="text-xs text-gray-400 dark:text-slate-500">{{ t('scan.wechatApp') }}</p>-->
</div> <!-- </div>-->
</div> <!-- </div>-->
</div> </div>
</template> </template>

View File

@@ -57,7 +57,7 @@
<script setup lang="ts" name="PurchaseAgentForm"> <script setup lang="ts" name="PurchaseAgentForm">
import { reactive, ref, nextTick } from 'vue' import { reactive, ref, nextTick } from 'vue'
import { getObj, addObj, editObj } from '/@/api/finance/purchaseagent'; import { getObj, addObj, editObj } from '/@/api/purchase/purchaseagent';
import { useMessage } from '/@/hooks/message'; import { useMessage } from '/@/hooks/message';
// / // /

View File

@@ -221,7 +221,7 @@
<script setup lang="ts" name="PurchaseAgent"> <script setup lang="ts" name="PurchaseAgent">
import { ref, reactive, defineAsyncComponent } from 'vue' import { ref, reactive, defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { getPage, delObj, getAgentSummary } from "/@/api/finance/purchaseagent"; import { getPage, delObj, getAgentSummary } from "/@/api/purchase/purchaseagent";
import { deptTree } from '/@/api/admin/dept'; import { deptTree } from '/@/api/admin/dept';
import { useMessage, useMessageBox } from "/@/hooks/message"; import { useMessage, useMessageBox } from "/@/hooks/message";
import { List, Document, EditPen, Clock, Search, User, Phone, UserFilled } from '@element-plus/icons-vue' import { List, Document, EditPen, Clock, Search, User, Phone, UserFilled } from '@element-plus/icons-vue'

View File

@@ -50,7 +50,7 @@
<script setup lang="ts" name="PurchasingSchoolLeaderForm"> <script setup lang="ts" name="PurchasingSchoolLeaderForm">
import { reactive, ref, nextTick } from 'vue' import { reactive, ref, nextTick } from 'vue'
import { getObj, addObj, editObj } from '/@/api/finance/purchasingschoolleader'; import { getObj, addObj, editObj } from '/@/api/purchase/purchasingschoolleader';
import { useMessage } from '/@/hooks/message'; import { useMessage } from '/@/hooks/message';
import orgSelector from '/@/components/OrgSelector/index.vue'; import orgSelector from '/@/components/OrgSelector/index.vue';

View File

@@ -135,7 +135,7 @@
<script setup lang="ts" name="PurchasingSchoolLeader"> <script setup lang="ts" name="PurchasingSchoolLeader">
import { ref, reactive, defineAsyncComponent } from 'vue' import { ref, reactive, defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { getPage, delObj } from "/@/api/finance/purchasingschoolleader"; import { getPage, delObj } from "/@/api/purchase/purchasingschoolleader";
import { useMessage, useMessageBox } from "/@/hooks/message"; import { useMessage, useMessageBox } from "/@/hooks/message";
import { List, User, UserFilled, EditPen, Clock, Search } from '@element-plus/icons-vue' import { List, User, UserFilled, EditPen, Clock, Search } from '@element-plus/icons-vue'

View File

@@ -56,7 +56,7 @@
<script setup lang="ts" name="PurchasingCategoryForm"> <script setup lang="ts" name="PurchasingCategoryForm">
import { reactive, ref, nextTick } from 'vue' import { reactive, ref, nextTick } from 'vue'
import { getTree, addObj, editObj } from '/@/api/finance/purchasingcategory'; import { getTree, addObj, editObj } from '/@/api/purchase/purchasingcategory';
import { useMessage } from '/@/hooks/message'; import { useMessage } from '/@/hooks/message';
// / // /

View File

@@ -93,7 +93,7 @@
<script setup lang="ts" name="PurchasingCategory"> <script setup lang="ts" name="PurchasingCategory">
import { ref, reactive, defineAsyncComponent } from 'vue' import { ref, reactive, defineAsyncComponent } from 'vue'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { getTreeRoots, getTreeChildren, delObj } from "/@/api/finance/purchasingcategory"; import { getTreeRoots, getTreeChildren, delObj } from "/@/api/purchase/purchasingcategory";
import { useMessage, useMessageBox } from "/@/hooks/message"; import { useMessage, useMessageBox } from "/@/hooks/message";
import { List, Document, DocumentCopy, EditPen } from '@element-plus/icons-vue' import { List, Document, DocumentCopy, EditPen } from '@element-plus/icons-vue'

View File

@@ -79,7 +79,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, watch, onMounted } from 'vue' import { ref, reactive, watch, onMounted } from 'vue'
import type { FormInstance, FormRules } from 'element-plus' import type { FormInstance, FormRules } from 'element-plus'
import { getContracts } from '/@/api/finance/purchasingrequisition' import { getContracts } from '/@/api/purchase/purchasingrequisition'
const props = defineProps<{ const props = defineProps<{
modelValue: Record<string, any> modelValue: Record<string, any>

View File

@@ -490,15 +490,15 @@
<script setup lang="ts" name="PurchasingRequisitionAdd"> <script setup lang="ts" name="PurchasingRequisitionAdd">
import { reactive, ref, onMounted, computed, watch, nextTick } from 'vue' import { reactive, ref, onMounted, computed, watch, nextTick } from 'vue'
import { useRouter, useRoute } from 'vue-router' import { useRouter, useRoute } from 'vue-router'
import { addObj, tempStore, getObj, editObj, getApplyFiles } from '/@/api/finance/purchasingrequisition'; import { addObj, tempStore, getObj, editObj, getApplyFiles } from '/@/api/purchase/purchasingrequisition';
import { getTree } from '/@/api/finance/purchasingcategory'; import { getTree } from '/@/api/purchase/purchasingcategory';
import { getDicts } from '/@/api/admin/dict'; import { getDicts } from '/@/api/admin/dict';
import { useMessage } from '/@/hooks/message'; import { useMessage } from '/@/hooks/message';
import UploadFile from '/@/components/Upload/index.vue'; import UploadFile from '/@/components/Upload/index.vue';
import other from '/@/utils/other'; import other from '/@/utils/other';
import { Document, Download, QuestionFilled } from '@element-plus/icons-vue'; import { Document, Download, QuestionFilled } from '@element-plus/icons-vue';
import { fetchList as getBusinessDeptList } from '/@/api/purchase/purchasingBusinessDept'; import { fetchList as getBusinessDeptList } from '/@/api/purchase/purchasingBusinessDept';
import { getPage as getSchoolLeaderPage } from '/@/api/finance/purchasingschoolleader'; import { getPage as getSchoolLeaderPage } from '/@/api/purchase/purchasingschoolleader';
import { fetchList as getPurchasingManagerList} from '/@/api/purchase/purchasingPurchaseManager'; import { fetchList as getPurchasingManagerList} from '/@/api/purchase/purchasingPurchaseManager';
import { fetchList as getBusinessLeaderList} from '/@/api/purchase/purchasingBusinessLeader'; import { fetchList as getBusinessLeaderList} from '/@/api/purchase/purchasingBusinessLeader';
import { Session } from '/@/utils/storage'; import { Session } from '/@/utils/storage';

View File

@@ -93,7 +93,7 @@
import { ref, computed } from 'vue' import { ref, computed } from 'vue'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import { getAgentRequirementFiles, getAgentApplyDetail, uploadAgentDoc, reuploadAgentDoc, getDocList } from '/@/api/finance/purchasingrequisition' import { getAgentRequirementFiles, getAgentApplyDetail, uploadAgentDoc, reuploadAgentDoc, getDocList } from '/@/api/purchase/purchasingrequisition'
import type { UploadInstance, UploadProps, UploadUserFile } from 'element-plus' import type { UploadInstance, UploadProps, UploadUserFile } from 'element-plus'
const emit = defineEmits(['refresh']) const emit = defineEmits(['refresh'])

View File

@@ -100,7 +100,7 @@
import { ref, reactive, defineAsyncComponent, onMounted } from 'vue' import { ref, reactive, defineAsyncComponent, onMounted } from 'vue'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { useMessage } from "/@/hooks/message"; import { useMessage } from "/@/hooks/message";
import { getAgentPendingList } from "/@/api/finance/purchasingrequisition"; import { getAgentPendingList } from "/@/api/purchase/purchasingrequisition";
import { Search, DocumentCopy, List } from '@element-plus/icons-vue' import { Search, DocumentCopy, List } from '@element-plus/icons-vue'
// //

View File

@@ -21,7 +21,7 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, watch } from 'vue' import { ref, watch } from 'vue'
import { getAuditRecords } from '/@/api/finance/purchasingdoc' import { getAuditRecords } from '/@/api/purchase/purchasingdoc'
const props = defineProps<{ const props = defineProps<{
applyId: number | string applyId: number | string

View File

@@ -97,8 +97,8 @@
<script setup lang="ts"> <script setup lang="ts">
import { ref, computed, defineAsyncComponent } from 'vue' import { ref, computed, defineAsyncComponent } from 'vue'
import { useMessage, useMessageBox } from '/@/hooks/message' import { useMessage, useMessageBox } from '/@/hooks/message'
import { getObj, getApplyFiles } from '/@/api/finance/purchasingrequisition' import { getObj, getApplyFiles } from '/@/api/purchase/purchasingrequisition'
import { getDocList, uploadDoc, reuploadDoc, confirmDoc, returnDoc, completeDoc, getAvailableActions, getDocDownloadUrl } from '/@/api/finance/purchasingdoc' import { getDocList, uploadDoc, reuploadDoc, confirmDoc, returnDoc, completeDoc, getAvailableActions, getDocDownloadUrl } from '/@/api/purchase/purchasingdoc'
import other from '/@/utils/other' import other from '/@/utils/other'
const AuditRecordList = defineAsyncComponent(() => import('./AuditRecordList.vue')); const AuditRecordList = defineAsyncComponent(() => import('./AuditRecordList.vue'));

View File

@@ -126,7 +126,7 @@
import { ref, reactive, defineAsyncComponent, onMounted } from 'vue' import { ref, reactive, defineAsyncComponent, onMounted } from 'vue'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { useMessage } from "/@/hooks/message"; import { useMessage } from "/@/hooks/message";
import { getPage } from "/@/api/finance/purchasingrequisition"; import { getPage } from "/@/api/purchase/purchasingrequisition";
import { Search, DocumentChecked, List } from '@element-plus/icons-vue' import { Search, DocumentChecked, List } from '@element-plus/icons-vue'
// //

View File

@@ -94,8 +94,8 @@
<script setup lang="ts" name="PurchasingImplement"> <script setup lang="ts" name="PurchasingImplement">
import { ref, computed, onMounted, watch, onUnmounted } from 'vue' import { ref, computed, onMounted, watch, onUnmounted } from 'vue'
import { useRoute } from 'vue-router' import { useRoute } from 'vue-router'
import { getDeptMembers, getObj, assignAgent, sendToAgent, revokeAgent, saveImplementType } from '/@/api/finance/purchasingrequisition' import { getDeptMembers, getObj, assignAgent, sendToAgent, revokeAgent, saveImplementType } from '/@/api/purchase/purchasingrequisition'
import { getPage as getAgentPage } from '/@/api/finance/purchaseagent' import { getPage as getAgentPage } from '/@/api/purchase/purchaseagent'
import { useMessage } from '/@/hooks/message' import { useMessage } from '/@/hooks/message'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'
import * as orderVue from '/@/api/order/order-key-vue' import * as orderVue from '/@/api/order/order-key-vue'

View File

@@ -32,7 +32,7 @@ const applyId = ref<string | number>('')
const iframeSrc = computed(() => { const iframeSrc = computed(() => {
const baseUrl = window.location.origin + window.location.pathname const baseUrl = window.location.origin + window.location.pathname
return `${baseUrl}#/finance/purchasingrequisition/implement?id=${applyId.value}` return `${baseUrl}#/purchase/purchasingrequisition/implement?id=${applyId.value}`
}) })
const handleClose = () => { const handleClose = () => {

View File

@@ -345,11 +345,11 @@
import { ref, reactive, defineAsyncComponent, onMounted, computed } from 'vue' import { ref, reactive, defineAsyncComponent, onMounted, computed } from 'vue'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { BasicTableProps, useTable } from "/@/hooks/table"; import { BasicTableProps, useTable } from "/@/hooks/table";
import { getPage, delObj, submitObj, getArchiveDownloadUrl, getApplyTemplateDownloadUrl, getFileApplyTemplateDownloadUrl, getDeptMembers, saveRepresentor } from "/@/api/finance/purchasingrequisition"; import { getPage, delObj, submitObj, getArchiveDownloadUrl, getApplyTemplateDownloadUrl, getFileApplyTemplateDownloadUrl, getDeptMembers, saveRepresentor } from "/@/api/purchase/purchasingrequisition";
import { useMessage, useMessageBox } from "/@/hooks/message"; import { useMessage, useMessageBox } from "/@/hooks/message";
import { useAuth } from '/@/hooks/auth'; import { useAuth } from '/@/hooks/auth';
import { getDicts } from '/@/api/admin/dict'; import { getDicts } from '/@/api/admin/dict';
import { getTree } from '/@/api/finance/purchasingcategory'; import { getTree } from '/@/api/purchase/purchasingcategory';
import { List, Document, DocumentCopy, Search, Money, CircleCheck, InfoFilled, Calendar, OfficeBuilding, Warning, DocumentChecked, Edit, Delete, Upload, FolderOpened, Download, User } from '@element-plus/icons-vue' import { List, Document, DocumentCopy, Search, Money, CircleCheck, InfoFilled, Calendar, OfficeBuilding, Warning, DocumentChecked, Edit, Delete, Upload, FolderOpened, Download, User } from '@element-plus/icons-vue'
import other from '/@/utils/other' import other from '/@/utils/other'
import { Session } from '/@/utils/storage' import { Session } from '/@/utils/storage'

View File

@@ -120,7 +120,7 @@
<script setup lang="ts" name="PurchasingTemplateManage"> <script setup lang="ts" name="PurchasingTemplateManage">
import { ref, reactive, onMounted } from 'vue'; import { ref, reactive, onMounted } from 'vue';
import { Document, List, UploadFilled, Download, Edit } from '@element-plus/icons-vue'; import { Document, List, UploadFilled, Download, Edit } from '@element-plus/icons-vue';
import { listTemplates, uploadTemplate, getTemplateDownloadUrl, updateTemplateTitle } from '/@/api/finance/purchasingtemplate'; import { listTemplates, uploadTemplate, getTemplateDownloadUrl, updateTemplateTitle } from '/@/api/purchase/purchasingtemplate';
import { useMessage } from '/@/hooks/message'; import { useMessage } from '/@/hooks/message';
const loading = ref(false); const loading = ref(false);

View File

@@ -266,7 +266,7 @@ import { getList } from '/@/api/recruit/recruitstudentplangroup';
import { backSchoolStuPage, leaveSchool } from '/@/api/recruit/recruitstudentsignup'; import { backSchoolStuPage, leaveSchool } from '/@/api/recruit/recruitstudentsignup';
import { getDeptList } from '/@/api/basic/basicclass'; import { getDeptList } from '/@/api/basic/basicclass';
import { listPlanByCondition as planMajor } from '/@/api/recruit/recruitstudentplan'; import { listPlanByCondition as planMajor } from '/@/api/recruit/recruitstudentplan';
import { updateFs, updateAllFS as updateAllFSApi } from '/@/api/finance/financenormalstu'; import { updateFs, updateAllFS as updateAllFSApi } from '/@/api/purchase/financenormalstu';
import { getDicts } from '/@/api/admin/dict'; import { getDicts } from '/@/api/admin/dict';
import { PAY_STATUS_LIST, PUSHED_STATUS_LIST, getStatusConfig, getCheckInStatusConfig } from '/@/config/global'; import { PAY_STATUS_LIST, PUSHED_STATUS_LIST, getStatusConfig, getCheckInStatusConfig } from '/@/config/global';
import { CircleCheck, CircleClose, DocumentChecked, Warning, Clock, Tickets } from '@element-plus/icons-vue'; import { CircleCheck, CircleClose, DocumentChecked, Warning, Clock, Tickets } from '@element-plus/icons-vue';

View File

@@ -33,7 +33,7 @@
<script> <script>
import { ref } from 'vue' import { ref } from 'vue'
import { ElNotification } from 'element-plus' import { ElNotification } from 'element-plus'
import { updateFs } from '/@/api/finance/financenormalstu' import { updateFs } from '/@/api/purchase/financenormalstu'
export default { export default {
name: 'PayQrcodeDialog', name: 'PayQrcodeDialog',