From 172cf9e6fb95520c72f634433c697eae6a2ac3fb Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 27 十一月 2024 02:37:37 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/projectManage/plan/planInfo.vue | 2 src/views/projectManage/plan/index.vue | 2 src/api/projectPlan/index.js | 39 +++++++++ src/views/projectManage/plan/planInfoCheck.vue | 100 +++++++++++++++++------- src/components/FileUpload/index.vue | 6 + src/router/index.js | 33 -------- src/views/projectManage/plan/planRecord.vue | 4 7 files changed, 118 insertions(+), 68 deletions(-) diff --git a/src/api/projectPlan/index.js b/src/api/projectPlan/index.js index 7ff6872..d3e00b2 100644 --- a/src/api/projectPlan/index.js +++ b/src/api/projectPlan/index.js @@ -75,4 +75,41 @@ method: 'post', data: data }) - } +} + +// 寤舵湡 +export function delayPlanInfo(data) { + return request({ + url: '/api/project-plan-info/delayPlanInfo', + method: 'post', + data: data + }) +} + +// 鑾峰緱涓婄骇鎵瑰 +export function getDepartmentApproval(id) { + return request({ + url: '/api/project-plan-examine-record/departmentApproval/' + id, + method: 'get' + }) +} + +// 鍥炲涓婄骇鎵瑰 +export function replyDepartmentApproval(data) { + return request({ + url: '/api/project-plan-examine-record/replyDepartmentApproval', + method: 'post', + data: data + }) +} + +// 璁″垝鏃ュ織 +export function getPlanLog(id) { + return request({ + url: '/api/project-plan-examine-record/planLog/' + id, + method: 'get' + }) +} + + + diff --git a/src/components/FileUpload/index.vue b/src/components/FileUpload/index.vue index e396687..e00f7af 100644 --- a/src/components/FileUpload/index.vue +++ b/src/components/FileUpload/index.vue @@ -2,6 +2,7 @@ <div class="upload-file"> <el-upload multiple + :accept="acceptList" :action="uploadFileUrl" :before-upload="handleBeforeUpload" :file-list="fileList" @@ -109,6 +110,11 @@ showTip() { return this.isShowTip && (this.fileType || this.fileSize); }, + acceptList () { + let temp = '.*' + temp = this.fileType.map(item => '.' + item).join(',') + return temp + } }, methods: { // 涓婁紶鍓嶆牎妫�鏍煎紡鍜屽ぇ灏� diff --git a/src/router/index.js b/src/router/index.js index 789c581..396f639 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -179,39 +179,6 @@ } ] }, - { - path: '/project', - component: Layout, - children: [ - { - path: '/projectPlan/index', - component: () => import('@/views/projectPlan/index'), - name: 'Index', - meta: { title: '椤圭洰璁″垝' } - }, - /** 椤圭洰璁″垝璁板綍 */ - { - path: '/projectPlan/planRecord', - component: () => import('@/views/projectPlan/planRecord'), - name: 'PlanRecord', - meta: { title: '椤圭洰璁″垝璁板綍' } - }, - /** 缂栬緫椤圭洰璁″垝椤� */ - { - path: '/projectPlan/planInfo', - component: () => import('@/views/projectPlan/planInfo'), - name: 'PlanInfo', - meta: { title: '缂栬緫椤圭洰璁″垝椤�' } - }, - /** 鏌ョ湅椤圭洰璁″垝椤� */ - { - path: '/projectPlan/planInfoCheck', - component: () => import('@/views/projectPlan/planInfoCheck'), - name: 'PlanInfoCheck', - meta: { title: '鏌ョ湅椤圭洰璁″垝椤�' } - } - ] - }, ] // 鍔ㄦ�佽矾鐢憋紝鍩轰簬鐢ㄦ埛鏉冮檺鍔ㄦ�佸幓鍔犺浇 diff --git a/src/views/projectPlan/index.vue b/src/views/projectManage/plan/index.vue similarity index 99% rename from src/views/projectPlan/index.vue rename to src/views/projectManage/plan/index.vue index 6ffcc71..7d2d5f5 100644 --- a/src/views/projectPlan/index.vue +++ b/src/views/projectManage/plan/index.vue @@ -329,7 +329,7 @@ /** 鏌ョ湅椤圭洰璁″垝璁板綍 */ handlePlanRecord(row) { this.$router.push({ - path: '/projectPlan/planRecord', + path: '/projectManage/planRecord', query: { data: JSON.stringify(row) } diff --git a/src/views/projectPlan/planInfo.vue b/src/views/projectManage/plan/planInfo.vue similarity index 99% rename from src/views/projectPlan/planInfo.vue rename to src/views/projectManage/plan/planInfo.vue index 7e0b7cc..3fd438b 100644 --- a/src/views/projectPlan/planInfo.vue +++ b/src/views/projectManage/plan/planInfo.vue @@ -169,7 +169,7 @@ /** 杩斿洖椤圭洰璁″垝璁板綍 */ handlePlanRecord(planInfoData) { this.$router.push({ - path: '/projectPlan/planRecord', + name: '/projectManage/planRecord', query: { data: JSON.stringify(planInfoData) } diff --git a/src/views/projectPlan/planInfoCheck.vue b/src/views/projectManage/plan/planInfoCheck.vue similarity index 64% rename from src/views/projectPlan/planInfoCheck.vue rename to src/views/projectManage/plan/planInfoCheck.vue index a3476cf..30c2174 100644 --- a/src/views/projectPlan/planInfoCheck.vue +++ b/src/views/projectManage/plan/planInfoCheck.vue @@ -21,12 +21,12 @@ </el-table-column> <el-table-column prop="startTime" label="璁″垝寮�濮嬫椂闂�" width="160" align="center"> <template #default="scope"> - <el-date-picker v-model="scope.row.startTime" type="date" placeholder="閫夋嫨鏃ユ湡" size="small" style="width: 130px" disabled/> + <el-date-picker v-model="scope.row.startTime" type="date" placeholder="閫夋嫨鏃ユ湡" size="small" style="width: 130px"/> </template> </el-table-column> <el-table-column prop="endTime" label="璁″垝瀹屾垚鏃堕棿" width="160" align="center"> <template #default="scope"> - <el-date-picker v-model="scope.row.endTime" type="date" placeholder="閫夋嫨鏃ユ湡" size="small" style="width: 130px" disabled/> + <el-date-picker v-model="scope.row.endTime" type="date" placeholder="閫夋嫨鏃ユ湡" size="small" style="width: 130px"/> </template> </el-table-column> <el-table-column :label="planRecordData.planTimeFlag === 0 ? '鏈堝害' : planRecordData.planTimeFlag === 1 ? '瀛e害' : '骞村害' " width="100" align="center"> @@ -59,30 +59,38 @@ <div style="margin-bottom: 10px; margin-top: 40px;"> <span style="font-size: 20px; font-weight: bold;">涓婄骇鎵瑰</span> </div> - <el-table :data="tableData" border stripe style="width: 100%; margin-bottom: 20px"> + <el-table :data="departmentApprovalData" border stripe style="width: 100%; margin-bottom: 20px"> <el-table-column prop="index" label="搴忓彿" width="50" align="center"> <template #default="scope"> {{ scope.$index + 1 }} </template> </el-table-column> - <el-table-column prop="taskName" label="浜嬮」鍚嶇О" width="200" align="center" /> - <el-table-column prop="startTime" label="涓婄骇瀹℃牳" width="100" align="center" /> - <el-table-column prop="startTime" label="鎵瑰鍐呭" width="160" align="center" /> - <el-table-column prop="endTime" label="鎵瑰鍥炲" width="160" align="center"> + <el-table-column prop="title" label="浜嬮」鍚嶇О" width="200" align="center" /> + <el-table-column prop="departmentExamine" label="涓婄骇瀹℃牳" width="100" align="center"> <template #default="scope"> - <el-input type="textarea" v-model="scope.row.title" placeholder="璇疯緭鍏�" rows="3" /> + {{ scope.row.departmentExamine === 0 ? '鍚屾剰' : scope.row.departmentExamine === 1 ? '椹冲洖' : '鏈鏍�' }} </template> </el-table-column> - <el-table-column prop="startTime" label="涓荤閮ㄩ棬瀹℃牳" width="100" align="center" /> - <el-table-column prop="startTime" label="鎵瑰鍐呭" width="160" align="center" /> - <el-table-column prop="endTime" label="鎵瑰鍥炲" width="160" align="center"> + <el-table-column prop="departmentApproval" label="鎵瑰鍐呭" width="160" align="center" /> + <el-table-column prop="departmentApprovalReply" label="鎵瑰鍥炲" width="160" align="center"> <template #default="scope"> - <el-input type="textarea" v-model="scope.row.title" placeholder="璇疯緭鍏�" rows="3" /> + <el-input type="textarea" v-model="scope.row.departmentApprovalReply" placeholder="璇疯緭鍏�" rows="3" /> + </template> + </el-table-column> + <el-table-column prop="manageExamine" label="涓荤閮ㄩ棬瀹℃牳" width="100" align="center" > + <template #default="scope"> + {{ scope.row.manageExamine === 0 ? '鍚屾剰' : scope.row.manageExamine === 1 ? '椹冲洖' : '鏈鏍�' }} + </template> + </el-table-column> + <el-table-column prop="manageApproval" label="鎵瑰鍐呭" width="160" align="center" /> + <el-table-column prop="manageApprovalReply" label="鎵瑰鍥炲" width="160" align="center"> + <template #default="scope"> + <el-input type="textarea" v-model="scope.row.manageApprovalReply" placeholder="璇疯緭鍏�" rows="3" /> </template> </el-table-column> <el-table-column fixed="right" label="鎿嶄綔" align="center"> <template #default="scope"> - <el-button size="small" @click="handleDelay(scope.$index)">鍥炲</el-button> + <el-button size="small" @click="handleReply(scope.$index)">鍥炲</el-button> <el-button size="small" type="danger" @click="handleReset(scope.$index)">閲嶇疆</el-button> </template> </el-table-column> @@ -93,20 +101,28 @@ <div style="margin-bottom: 10px; margin-top: 40px;"> <span style="font-size: 20px; font-weight: bold;">璁″垝鏃ュ織</span> </div> - <el-table :data="tableData" border stripe style="width: 100%; margin-bottom: 20px"> + <el-table :data="planLogData" border stripe style="width: 100%; margin-bottom: 20px"> <el-table-column prop="index" label="搴忓彿" width="50" align="center"> <template #default="scope"> {{ scope.$index + 1 }} </template> </el-table-column> - <el-table-column prop="taskName" label="浜嬮」鍚嶇О" width="200" align="center" /> - <el-table-column prop="startTime" label="涓婄骇瀹℃牳" width="100" align="center" /> - <el-table-column prop="startTime" label="鎵瑰鍐呭" width="160" align="center" /> - <el-table-column prop="endTime" label="鎵瑰鍥炲" width="160" align="center" /> - <el-table-column prop="startTime" label="涓荤閮ㄩ棬瀹℃牳" width="100" align="center" /> - <el-table-column prop="startTime" label="鎵瑰鍐呭" width="160" align="center" /> - <el-table-column prop="endTime" label="鎵瑰鍥炲" width="160" align="center" /> - <el-table-column fixed="right" label="鏃堕棿" align="center" /> + <el-table-column prop="title" label="浜嬮」鍚嶇О" width="200" align="center" /> + <el-table-column prop="departmentExamine" label="涓婄骇瀹℃牳" width="100" align="center" > + <template #default="scope"> + {{ scope.row.departmentExamine === 0 ? '鍚屾剰' : scope.row.departmentExamine === 1 ? '椹冲洖' : '鏈鏍�' }} + </template> + </el-table-column> + <el-table-column prop="departmentApproval" label="鎵瑰鍐呭" width="160" align="center" /> + <el-table-column prop="departmentApprovalReply" label="鎵瑰鍥炲" width="160" align="center" /> + <el-table-column prop="manageExamine" label="涓荤閮ㄩ棬瀹℃牳" width="100" align="center" > + <template #default="scope"> + {{ scope.row.manageExamine === 0 ? '鍚屾剰' : scope.row.manageExamine === 1 ? '椹冲洖' : '鏈鏍�' }} + </template> + </el-table-column> + <el-table-column prop="manageApproval" label="鎵瑰鍐呭" width="160" align="center" /> + <el-table-column prop="manageApprovalReply" label="鎵瑰鍥炲" width="160" align="center" /> + <el-table-column prop="gmtCreate" label="鏃堕棿" align="center" /> </el-table> </el-col> </el-row> @@ -117,7 +133,7 @@ </template> <script> -import { getPlanInfoData, addPlanInfo, savePlanInfo } from "@/api/projectPlan/index"; +import { getPlanInfoData, delayPlanInfo, getDepartmentApproval, getPlanLog, replyDepartmentApproval } from "@/api/projectPlan/index"; export default { name: "planInfoCheck", @@ -127,6 +143,7 @@ // 鎺ユ敹浼犻�掕繃鏉ョ殑椤圭洰璁″垝鏁版嵁 planRecordData: {}, planInfoData: {}, + // 璁″垝椤规暟鎹� tableData: [ { title: '', @@ -134,6 +151,10 @@ endTime: '' }, ], + // 涓婄骇鎵瑰鏁版嵁 + departmentApprovalData: [], + // 璁″垝鏃ュ織鏁版嵁 + planLogData: [], // 鎶曡祫閲戦 actualInvest: '', // 鏂板鍙傛暟 @@ -150,7 +171,7 @@ search() { this.getPlanInfoData(this.planRecordData.id); // 鑾峰彇椤圭洰璁″垝椤� this.getDepartmentApproval(this.planRecordData.id); // 鑾峰彇涓婄骇鎵瑰 - //this.getPlanLog(); // 鑾峰彇璁″垝鏃ュ織 + this.getPlanLog(this.planRecordData.id); // 鑾峰彇璁″垝鏃ュ織 }, // 鑾峰彇浼犻�掕繃鏉ョ殑椤圭洰璁″垝璇︽儏 getPlanRecordData() { @@ -172,14 +193,33 @@ } }); }, - // 鑾峰彇涓婄骇鎵瑰 - getDepartmentApproval(projectPlanRecordId) { - getExamineRecord(projectPlanRecordId).then(response => { - console.log(response.data) + // 寤舵湡 + handleDelay(index) { + delayPlanInfo(this.tableData[index]).then(response => { + this.$message.success('寤舵湡鎴愬姛'); + this.search() }); }, - // 鑾峰彇璁″垝鏃ュ織 + // 鑾峰彇涓婄骇鎵瑰 + getDepartmentApproval(projectPlanRecordId) { + getDepartmentApproval(projectPlanRecordId).then(response => { + this.departmentApprovalData = response.data; + }); + }, + // 鍥炲 + handleReply(index) { + replyDepartmentApproval(this.departmentApprovalData[index]).then(response => { + this.$message.success('鍥炲鎴愬姛'); + this.search() + }); + }, + // 鑾峰彇璁″垝鏃ュ織 + getPlanLog(projectPlanRecordId) { + getPlanLog(projectPlanRecordId).then(response => { + this.planLogData = response.data; + }); + }, // 閲嶇疆褰撳墠琛屾暟鎹� handleReset(index) { this.tableData[index].title = ''; @@ -189,7 +229,7 @@ /** 杩斿洖椤圭洰璁″垝璁板綍椤甸潰 */ handlePlanRecord(planInfoData) { this.$router.push({ - path: '/projectPlan/planRecord', + name: '/projectManage/planRecord', query: { data: JSON.stringify(planInfoData) } diff --git a/src/views/projectPlan/planRecord.vue b/src/views/projectManage/plan/planRecord.vue similarity index 98% rename from src/views/projectPlan/planRecord.vue rename to src/views/projectManage/plan/planRecord.vue index 9ec2764..cdbe15a 100644 --- a/src/views/projectPlan/planRecord.vue +++ b/src/views/projectManage/plan/planRecord.vue @@ -191,7 +191,7 @@ /** 淇敼椤圭洰璁″垝椤� */ handlePlanInfo(row) { this.$router.push({ - path: '/projectPlan/planInfo', + name: 'PlanInfo', query: { data: JSON.stringify(row), planInfoData: this.planInfoData @@ -207,7 +207,7 @@ // 鏌ョ湅椤圭洰璁″垝椤� handleCheckPlanInfo(row) { this.$router.push({ - path: '/projectPlan/planInfoCheck', + path: '/projectManage/planInfoCheck', query: { data: JSON.stringify(row), } -- Gitblit v1.8.0