diff --git a/.env.development b/.env.development index fe20df3..21892b7 100644 --- a/.env.development +++ b/.env.development @@ -5,7 +5,7 @@ VITE_APP_TITLE = 新能源项目管理平台 VITE_APP_ENV = 'development' # 开发环境 -VITE_APP_BASE_API = 'http://192.168.110.159:8898' +VITE_APP_BASE_API = 'http://192.168.110.180:8898' # 无人机接口地址 diff --git a/src/api/design/Professional/index.ts b/src/api/design/Professional/index.ts index ad6307b..7f13895 100644 --- a/src/api/design/Professional/index.ts +++ b/src/api/design/Professional/index.ts @@ -24,3 +24,10 @@ export const extractDetail = (id) => { method: 'get' }); }; +// 获取提取资料 +export const getFileList = (id) => { + return request({ + url: '/design/extract/fileList/' + id, + method: 'get' + }); +}; diff --git a/src/api/design/drawing/index.ts b/src/api/design/drawing/index.ts index fbaa117..279df5d 100644 --- a/src/api/design/drawing/index.ts +++ b/src/api/design/drawing/index.ts @@ -61,3 +61,24 @@ export const delDrawing = (id: string | number | Array) => { method: 'delete' }); }; +/** + * 查阅 + * @param id + */ +export const volumeFileViewer = (data) => { + return request({ + url: '/design/volumeFileViewer', + method: 'post', + data + }); +}; +/** + * 查阅记录列表 + * @param id + */ +export const volumeFileViewerList = (id) => { + return request({ + url: '/design/volumeFileViewer/list?volumeFileId=' + id, + method: 'get' + }); +}; diff --git a/src/components/Process/submitVerify.vue b/src/components/Process/submitVerify.vue index 10e2bda..6744b96 100644 --- a/src/components/Process/submitVerify.vue +++ b/src/components/Process/submitVerify.vue @@ -361,7 +361,7 @@ const handleBackProcess = async () => { await backProcess(backForm.value).finally(() => { loading.value = false; buttonDisabled.value = false; - if (isDrawing.value) { + if (isDrawing.value) { detailFormRef.value.submit(businessId.value); } }); diff --git a/src/permission.ts b/src/permission.ts index c919be5..6868529 100644 --- a/src/permission.ts +++ b/src/permission.ts @@ -10,7 +10,7 @@ import useSettingsStore from '@/store/modules/settings'; import usePermissionStore from '@/store/modules/permission'; NProgress.configure({ showSpinner: false }); -const whiteList = ['/login', '/register', '/social-callback', '/register*', '/register/*']; +const whiteList = ['/login', '/register', '/social-callback', '/register*', '/register/*', '/materials/purchaseDoc/uploadCode']; const isWhiteList = (path: string) => { return whiteList.some((pattern) => isPathMatch(pattern, path)); diff --git a/src/router/index.ts b/src/router/index.ts index 6ac8743..c51dbc2 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -118,6 +118,11 @@ export const constantRoutes: RouteRecordRaw[] = [ path: '/gis2D1', component: () => import('@/views/gis2D/index.vue'), hidden: true + }, + { + path: '/materials/purchaseDoc/uploadCode', + component: () => import('@/views/materials/purchaseDoc/uploadCode.vue'), + hidden: true } ]; diff --git a/src/views/cory/template/components/engineeringChangeApplicationForm.vue b/src/views/cory/template/components/engineeringChangeApplicationForm.vue index db3a07f..90d12ff 100644 --- a/src/views/cory/template/components/engineeringChangeApplicationForm.vue +++ b/src/views/cory/template/components/engineeringChangeApplicationForm.vue @@ -71,8 +71,8 @@ {{ tableDetail.content }} - {{ - tableDetail.attachmentsList.originalName + {{ + tableDetail.attachmentsList?.originalName }} @@ -175,7 +175,8 @@ const props = defineProps({ } }); -const tableDetail = ref({}); +const tableDetail = ref({ attachmentsImgList: [], attachmentsList: [] }); + const exportRef = ref(); const radioList = ref([ { value: 0, label: '设计漏项' }, diff --git a/src/views/design/Professional/index.vue b/src/views/design/Professional/index.vue index dedbb83..41ee447 100644 --- a/src/views/design/Professional/index.vue +++ b/src/views/design/Professional/index.vue @@ -1,5 +1,5 @@ @@ -63,7 +101,7 @@ import { ref, reactive, computed, onMounted } from 'vue'; import { useUserStoreHook } from '@/store/modules/user'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { wf_business_status } = toRefs(proxy?.useDict('wf_business_status')); -import { extractList } from '@/api/design/Professional'; +import { extractList, getFileList } from '@/api/design/Professional'; // 获取用户 store const userStore = useUserStoreHook(); @@ -73,6 +111,9 @@ const currentProject = computed(() => userStore.selectedProject); const professionalList = ref([]); const showSearch = ref(true); const loading = ref(false); +const loadingFlie = ref(false); +const viewVisible = ref(false); //文件列表展示 +const fileList = ref([]); const data = reactive({ queryParams: { pageNum: 1, @@ -145,7 +186,19 @@ const handleDownload = (row) => { `互提资料.zip` ); }; - +const handleViewFile = (row) => { + window.open(row.docUrl, '_blank'); +}; +const handleFile = async (row) => { + // 查看文件 + viewVisible.value = true; + loadingFlie.value = true; + let res = await getFileList(row.id); + if (res.code == 200) { + fileList.value = res.data; + } + loadingFlie.value = false; +}; // 页面挂载时初始化数据 onMounted(() => { getList(); @@ -153,7 +206,7 @@ onMounted(() => { diff --git a/src/views/design/designChange/index.vue b/src/views/design/designChange/index.vue index 304a7ef..6c71510 100644 --- a/src/views/design/designChange/index.vue +++ b/src/views/design/designChange/index.vue @@ -44,10 +44,11 @@ + - + @@ -128,7 +133,7 @@ import { listDesignChange, delDesignChange } from '@/api/design/designChange'; import { DesignChangeVO } from '@/api/design/designChange/types'; import { useUserStoreHook } from '@/store/modules/user'; import wordDetial from '@/components/wordDetial/index'; - +import histroy from '../volumeCatalog/comm/histroy.vue'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { design_change_reason_type } = toRefs(proxy?.useDict('design_change_reason_type')); // 获取用户 store @@ -137,11 +142,9 @@ const userStore = useUserStoreHook(); const currentProject = computed(() => userStore.selectedProject); const designChangeList = ref([]); const wordDetialRef = ref>(); +const histroyRef = ref>(); const loading = ref(true); const showSearch = ref(true); -const ids = ref>([]); -const single = ref(true); -const multiple = ref(true); const total = ref(0); const { wf_business_status } = toRefs(proxy?.useDict('wf_business_status')); const queryFormRef = ref(); @@ -151,6 +154,7 @@ const uploadUrl = computed(() => { const viewVisible = ref(false); const fileList = ref([]); const ossid = ref(null); +const viewDetailVisible = ref(false); const data = reactive({ queryParams: { pageNum: 1, @@ -182,7 +186,6 @@ const getList = async () => { /** 搜索按钮操作 */ const handleQuery = () => { - console.log(ossid.value); queryParams.value.pageNum = 1; getList(); }; @@ -192,7 +195,7 @@ const resetQuery = () => { queryFormRef.value?.resetFields(); handleQuery(); }; -/** 新增按钮操作 */ +/** 下发通知 */ const handleAdd = () => { proxy.$tab.closePage(proxy.$route); proxy.$router.push({ @@ -202,7 +205,7 @@ const handleAdd = () => { } }); }; -/** 新增按钮操作 */ +/** 查看详情 */ const handleViewDetail = (row) => { proxy.$tab.closePage(proxy.$route); proxy.$router.push({ @@ -213,7 +216,7 @@ const handleViewDetail = (row) => { } }); }; -// 变更图纸 +// 上传变更图纸 const handleAddChange = (row) => { proxy.$tab.closePage(proxy.$route); proxy.$router.push({ @@ -224,7 +227,7 @@ const handleAddChange = (row) => { } }); }; -/** 查看按钮操作 */ +/** 查看流程操作 */ const handleViewInfo = (row) => { proxy.$tab.closePage(proxy.$route); proxy.$router.push({ @@ -240,9 +243,12 @@ const handleDesignView = async (row?: DesignChangeVO) => { fileList.value = row.ossVoList; viewVisible.value = true; }; -const handleView = (row) => { - // 查看详情 - wordDetialRef.value?.openDialog(row, design_change_reason_type.value); +const handleViewHistory = async (row) => { + // 查看历史流程记录 + viewDetailVisible.value = true; + nextTick(() => { + histroyRef.value?.getList(row.id); + }); }; // 预览 const onOpen = (path: string) => { diff --git a/src/views/design/designChange/indexEdit.vue b/src/views/design/designChange/indexEdit.vue index a6a9b74..0d7c390 100644 --- a/src/views/design/designChange/indexEdit.vue +++ b/src/views/design/designChange/indexEdit.vue @@ -2,9 +2,14 @@
+
+ 返回 +
-

设计变更信息

+

下发变更通知信息

@@ -44,8 +49,8 @@ - - + + @@ -143,7 +148,11 @@
- 返回 { fileVoList.value = obj.fileVoList; form.value.volumeName = obj.volumeName; form.value.specialty = obj.specialty; + form.value.specialtyName = obj.specialtyName; form.value.extendDetail.subName = obj.designSubitem; }; /** 获取详情 */ diff --git a/src/views/design/drawing/DrawingTable.vue b/src/views/design/drawing/DrawingTable.vue index 9a76f05..2a523fd 100644 --- a/src/views/design/drawing/DrawingTable.vue +++ b/src/views/design/drawing/DrawingTable.vue @@ -1,32 +1,6 @@ - -
- 选择历史退回记录: - - - -
- 查看excel文件 -
- -

设计验证表

-
- -
- 编号: - {{ examineForm.num }} -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
工程名称{{ examineForm.projectName }}
子项名称{{ examineForm.subprojectName }}设计阶段{{ examineForm.stage }}
专业{{ examineForm.professional }}卷册{{ examineForm.volume }}设计人{{ examineForm.designer }}
验证内容{{ examineForm.verificationContent }}
验证意见执行意见
-
{{ examineForm.verificationOpinion }}
-
-
{{ examineForm.executionOpinion }}
-
-
- 校审: {{ examineForm.proofreading }} - {{ dateFormat(examineForm.proofreadingDate) }} -
-
-
执行人: {{ examineForm.executor }}
-
- {{ dateFormat(examineForm.executorDate) }} -
-
-
- 审核 : {{ examineForm.audit }} - {{ dateFormat(examineForm.auditDate) }} -
-
-
-
-
+ +
@@ -322,7 +229,9 @@ import { } from '@/api/design/volumeCatalog'; import { VolumeCatalogVO } from '@/api/design/volumeCatalog/types'; import { useUserStoreHook } from '@/store/modules/user'; +import histroy from './comm/histroy.vue'; const fileList = ref([]); +import { designUserList } from '@/api/design/appointment'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { design_state, wf_business_status, des_user_major } = toRefs(proxy?.useDict('design_state', 'wf_business_status', 'des_user_major')); import { drawingreviewReceiptsDetail, drawingreviewReceiptsList } from '@/api/design/drawingreview'; @@ -331,12 +240,11 @@ const buttonLoading = ref(false); const loading = ref(true); const showSearch = ref(true); const ids = ref>([]); +const histroyRef = ref>(); const single = ref(true); const multiple = ref(true); const total = ref(0); -const hisId = ref(''); const dialogHistory = ref(false); -const hisList = ref([]); // 获取用户 store const userStore = useUserStoreHook(); // 从 store 中获取项目列表和当前选中的项目 @@ -382,7 +290,7 @@ const examineForm = ref({ volume: '' }); const userList = ref([]); - +const userAppList = ref([]); //人事任命的用户 const initFormData: any = { design: undefined, projectId: currentProject.value?.id || '', @@ -425,26 +333,26 @@ const getList = async () => { loading.value = false; } }; -const dateFormat = (v) => { - if (!v) return '-'; - let time = new Date(v); - let y = time.getFullYear(); - let MM = time.getMonth() + 1; - MM = MM < 10 ? '0' + MM : MM; - let d = time.getDate(); - d = d < 10 ? '0' + d : d; - return y + '年' + MM + '月' + d + '日'; +const getUserAppList = async () => { + const res = await designUserList({ projectId: currentProject.value?.id }); + if (res.code === 200) { + console.log(res.rows); + + res.rows.forEach((item: any) => { + if (item.userType == 2) { + //设计人员 + userAppList.value.push(item); + } + }); + } }; const handleViewHistory = async (row) => { // 查看历史流程记录 dialogHistory.value = true; - hisId.value = ''; - let res = await drawingreviewReceiptsList({ drawingreviewId: row.design }); - hisList.value = res.rows; - if (hisList.value.length > 0) { - hisId.value = hisList.value[0].id; - getDetails(hisId.value); - } + // 查看历史流程记录 + nextTick(() => { + histroyRef.value?.getList(row.design); + }); }; const handleShowInfo = (val) => { getDetails(val); @@ -508,12 +416,6 @@ const handleUpload = async (row?: any) => { uploadForm.fileList = res.data.filter((item) => item.status == '1') || []; uploadVisible.value = true; }; - -/** 查看文件 */ -const lookFile = (fileId: string) => { - // lookViewerFile(fileId); -}; - /** 重置上传表单 */ const resetUploadForm = () => { uploadForm.userIds = []; @@ -612,6 +514,7 @@ const handleUpdate = async (row?: VolumeCatalogVO) => { }; onMounted(() => { + getUserAppList(); getList(); }); @@ -621,6 +524,7 @@ const listeningProject = watch( (nid, oid) => { queryParams.value.projectId = nid; form.value.projectId = nid; + getUserAppList(); getList(); } ); diff --git a/src/views/materials/materialsEquipment/partyA/materialIssue/index.vue b/src/views/materials/materialsEquipment/materialIssue/index.vue similarity index 100% rename from src/views/materials/materialsEquipment/partyA/materialIssue/index.vue rename to src/views/materials/materialsEquipment/materialIssue/index.vue diff --git a/src/views/materials/materialsEquipment/partyA/materialIssue/word/icon/down.png b/src/views/materials/materialsEquipment/materialIssue/word/icon/down.png similarity index 100% rename from src/views/materials/materialsEquipment/partyA/materialIssue/word/icon/down.png rename to src/views/materials/materialsEquipment/materialIssue/word/icon/down.png diff --git a/src/views/materials/materialsEquipment/partyA/materialIssue/word/index.vue b/src/views/materials/materialsEquipment/materialIssue/word/index.vue similarity index 100% rename from src/views/materials/materialsEquipment/partyA/materialIssue/word/index.vue rename to src/views/materials/materialsEquipment/materialIssue/word/index.vue diff --git a/src/views/materials/materialsEquipment/partyA/materialReceive/index.vue b/src/views/materials/materialsEquipment/materialReceive/index.vue similarity index 97% rename from src/views/materials/materialsEquipment/partyA/materialReceive/index.vue rename to src/views/materials/materialsEquipment/materialReceive/index.vue index ab1a3fa..da216a9 100644 --- a/src/views/materials/materialsEquipment/partyA/materialReceive/index.vue +++ b/src/views/materials/materialsEquipment/materialReceive/index.vue @@ -92,6 +92,14 @@ + + + + + + + + diff --git a/src/views/materials/materialsEquipment/partyA/materialReceive/word/icon/down.png b/src/views/materials/materialsEquipment/materialReceive/word/icon/down.png similarity index 100% rename from src/views/materials/materialsEquipment/partyA/materialReceive/word/icon/down.png rename to src/views/materials/materialsEquipment/materialReceive/word/icon/down.png diff --git a/src/views/materials/materialsEquipment/partyA/materialReceive/word/index.vue b/src/views/materials/materialsEquipment/materialReceive/word/index.vue similarity index 100% rename from src/views/materials/materialsEquipment/partyA/materialReceive/word/index.vue rename to src/views/materials/materialsEquipment/materialReceive/word/index.vue diff --git a/src/views/materials/materialsEquipment/partyB/materialIssue/index.vue b/src/views/materials/materialsEquipment/partyB/materialIssue/index.vue deleted file mode 100644 index 9d413e7..0000000 --- a/src/views/materials/materialsEquipment/partyB/materialIssue/index.vue +++ /dev/null @@ -1,498 +0,0 @@ - - - - diff --git a/src/views/materials/materialsEquipment/partyB/materialIssue/word/icon/down.png b/src/views/materials/materialsEquipment/partyB/materialIssue/word/icon/down.png deleted file mode 100644 index f8fe596..0000000 Binary files a/src/views/materials/materialsEquipment/partyB/materialIssue/word/icon/down.png and /dev/null differ diff --git a/src/views/materials/materialsEquipment/partyB/materialIssue/word/index.vue b/src/views/materials/materialsEquipment/partyB/materialIssue/word/index.vue deleted file mode 100644 index c560a8c..0000000 --- a/src/views/materials/materialsEquipment/partyB/materialIssue/word/index.vue +++ /dev/null @@ -1,301 +0,0 @@ - - - - - diff --git a/src/views/materials/materialsEquipment/partyB/materialReceive/index.vue b/src/views/materials/materialsEquipment/partyB/materialReceive/index.vue deleted file mode 100644 index de8b83e..0000000 --- a/src/views/materials/materialsEquipment/partyB/materialReceive/index.vue +++ /dev/null @@ -1,502 +0,0 @@ - - - - diff --git a/src/views/materials/materialsEquipment/partyB/materialReceive/word/icon/down.png b/src/views/materials/materialsEquipment/partyB/materialReceive/word/icon/down.png deleted file mode 100644 index f8fe596..0000000 Binary files a/src/views/materials/materialsEquipment/partyB/materialReceive/word/icon/down.png and /dev/null differ diff --git a/src/views/materials/materialsEquipment/partyB/materialReceive/word/index.vue b/src/views/materials/materialsEquipment/partyB/materialReceive/word/index.vue deleted file mode 100644 index 4a4312d..0000000 --- a/src/views/materials/materialsEquipment/partyB/materialReceive/word/index.vue +++ /dev/null @@ -1,290 +0,0 @@ - - - - - diff --git a/src/views/materials/materialsInventory/index.vue b/src/views/materials/materialsInventory/index.vue index 49d2985..c7c4562 100644 --- a/src/views/materials/materialsInventory/index.vue +++ b/src/views/materials/materialsInventory/index.vue @@ -31,7 +31,8 @@ - + + - - - + @@ -106,40 +98,50 @@ {{ parseTime(scope.row.arrivalDate, '{y}-{m}-{d}') }} - - + + - - + + + - - - - + - - + + + + + @@ -147,62 +149,71 @@
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/src/views/materials/purchaseDoc/indexEdit.vue b/src/views/materials/purchaseDoc/indexEdit.vue new file mode 100644 index 0000000..c3683c8 --- /dev/null +++ b/src/views/materials/purchaseDoc/indexEdit.vue @@ -0,0 +1,439 @@ + + + + diff --git a/src/views/materials/purchaseDoc/uploadCode.vue b/src/views/materials/purchaseDoc/uploadCode.vue new file mode 100644 index 0000000..4b4281c --- /dev/null +++ b/src/views/materials/purchaseDoc/uploadCode.vue @@ -0,0 +1,54 @@ + + + + +