From b4fa6fafc2db40fba48676e38f4340ce14e99179 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 17 三月 2025 11:51:34 +0800
Subject: [PATCH] Merge branch 'dev'
---
src/views/engineering/index.vue | 199 +++++++++++++++++++++++--------------------------
1 files changed, 95 insertions(+), 104 deletions(-)
diff --git a/src/views/engineering/index.vue b/src/views/engineering/index.vue
index 48a2cf7..1576867 100644
--- a/src/views/engineering/index.vue
+++ b/src/views/engineering/index.vue
@@ -1,26 +1,26 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
- <el-form-item label="宸ョ▼鍚嶇О" prop="projectName">
+ <el-form-item label="椤圭洰鍚嶇О" prop="projectName">
<el-input
v-model="queryParams.projectName"
- placeholder="璇疯緭鍏ュ伐绋嬪悕绉�"
+ placeholder="椤圭洰鍚嶇О鎼滅储"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="涓婚」鐩�" prop="projectInfoId">
- <el-row>
- <el-select v-model="queryParams.projectInfoId" filterable clearable style="width: 100%" placeholder="璇烽�夋嫨涓婚」鐩�">
- <el-option
- v-for="item in projectList"
- :key="'pp1' + item.id"
- :label="item.projectName"
- :value="item.id">
- </el-option>
- </el-select>
- </el-row>
- </el-form-item>
+<!-- <el-form-item label="涓婚」鐩�" prop="projectInfoId">-->
+<!-- <el-row>-->
+<!-- <el-select v-model="queryParams.projectInfoId" filterable clearable style="width: 100%" placeholder="璇烽�夋嫨涓婚」鐩�">-->
+<!-- <el-option-->
+<!-- v-for="item in projectList"-->
+<!-- :key="'pp1' + item.id"-->
+<!-- :label="item.projectName"-->
+<!-- :value="item.id">-->
+<!-- </el-option>-->
+<!-- </el-select>-->
+<!-- </el-row>-->
+<!-- </el-form-item>-->
<el-form-item label="椤圭洰鎺ㄨ繘绫诲瀷" label-width="120px" prop="projectType">
<el-select v-model="queryParams.projectType" placeholder="璇烽�夋嫨椤圭洰鎺ㄨ繘绫诲瀷" clearable>
<el-option
@@ -47,51 +47,51 @@
</el-form-item>
</el-form>
- <el-row :gutter="10" class="mb8">
- <el-col :span="1.5">
- <el-button
- type="primary"
- plain
- icon="el-icon-plus"
- size="mini"
- @click="handleAdd"
- v-hasPermi="['code:engineering:add']"
- >鏂板</el-button>
- </el-col>
+<!-- <el-row :gutter="10" class="mb8">-->
<!-- <el-col :span="1.5">-->
<!-- <el-button-->
-<!-- type="success"-->
+<!-- type="primary"-->
<!-- plain-->
-<!-- icon="el-icon-edit"-->
+<!-- icon="el-icon-plus"-->
<!-- size="mini"-->
-<!-- :disabled="single"-->
-<!-- @click="handleUpdate"-->
-<!-- v-hasPermi="['code:engineering:edit']"-->
-<!-- >淇敼</el-button>-->
+<!-- @click="handleAdd"-->
+<!-- v-hasPermi="['code:engineering:add']"-->
+<!-- >鏂板</el-button>-->
<!-- </el-col>-->
-<!-- <el-col :span="1.5">-->
-<!-- <el-button-->
-<!-- type="danger"-->
-<!-- plain-->
-<!-- icon="el-icon-delete"-->
-<!-- size="mini"-->
-<!-- :disabled="multiple"-->
-<!-- @click="deleteByIds"-->
-<!-- v-hasPermi="['code:engineering:remove']"-->
-<!-- >鍒犻櫎</el-button>-->
-<!-- </el-col>-->
-<!-- <el-col :span="1.5">-->
-<!-- <el-button-->
-<!-- type="warning"-->
-<!-- plain-->
-<!-- icon="el-icon-download"-->
-<!-- size="mini"-->
-<!-- @click="handleExport"-->
-<!-- v-hasPermi="['code:engineering:export']"-->
-<!-- >瀵煎嚭</el-button>-->
-<!-- </el-col>-->
- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
- </el-row>
+<!--<!– <el-col :span="1.5">–>-->
+<!--<!– <el-button–>-->
+<!--<!– type="success"–>-->
+<!--<!– plain–>-->
+<!--<!– icon="el-icon-edit"–>-->
+<!--<!– size="mini"–>-->
+<!--<!– :disabled="single"–>-->
+<!--<!– @click="handleUpdate"–>-->
+<!--<!– v-hasPermi="['code:engineering:edit']"–>-->
+<!--<!– >淇敼</el-button>–>-->
+<!--<!– </el-col>–>-->
+<!--<!– <el-col :span="1.5">–>-->
+<!--<!– <el-button–>-->
+<!--<!– type="danger"–>-->
+<!--<!– plain–>-->
+<!--<!– icon="el-icon-delete"–>-->
+<!--<!– size="mini"–>-->
+<!--<!– :disabled="multiple"–>-->
+<!--<!– @click="deleteByIds"–>-->
+<!--<!– v-hasPermi="['code:engineering:remove']"–>-->
+<!--<!– >鍒犻櫎</el-button>–>-->
+<!--<!– </el-col>–>-->
+<!--<!– <el-col :span="1.5">–>-->
+<!--<!– <el-button–>-->
+<!--<!– type="warning"–>-->
+<!--<!– plain–>-->
+<!--<!– icon="el-icon-download"–>-->
+<!--<!– size="mini"–>-->
+<!--<!– @click="handleExport"–>-->
+<!--<!– v-hasPermi="['code:engineering:export']"–>-->
+<!--<!– >瀵煎嚭</el-button>–>-->
+<!--<!– </el-col>–>-->
+<!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>-->
+<!-- </el-row>-->
<el-table
ref="elTable"
@@ -105,26 +105,25 @@
default-expand-all
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
:show-overflow-tooltip="true">
- <el-table-column label="椤圭洰鍚嶇О" prop="projectName" />
+ <el-table-column label="椤圭洰鍚嶇О" min-width="250" :show-overflow-tooltip="true" prop="projectName" />
<el-table-column label="椤圭洰鎺ㄨ繘绫诲瀷" align="center" prop="projectType">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_project_type" :value="scope.row.projectType"/>
+ </template>
+ </el-table-column>
+ <el-table-column label="涓荤閮ㄩ棬" align="center" prop="competentDepartmentName">
+ </el-table-column>
+ <el-table-column label="涓氫富鍗曚綅" align="center" prop="projectOwnerUnitName">
+ </el-table-column>
+ <el-table-column label="骞翠唤" align="center" prop="year">
+ <template slot-scope="scope">
+ {{ scope.row.year ? scope.row.year + '骞�' : '' }}
</template>
</el-table-column>
<el-table-column label="鎶曡祫棰�(涓�)" align="center" prop="investmentAmount" />
<el-table-column label="寮�宸ョ姸鎬�" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.sys_project_status" :value="scope.row.status"/>
- </template>
- </el-table-column>
- <el-table-column label="涓荤閮ㄩ棬" align="center" prop="departmentName">
-
- </el-table-column>
- <el-table-column label="涓氫富鍗曚綅" align="center" prop="unitName">
- </el-table-column>
- <el-table-column label="骞翠唤" align="center" prop="year">
- <template slot-scope="scope">
- {{ scope.row.year ? scope.row.year.split('-')[0] + '骞�' : '' }}
</template>
</el-table-column>
<el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
@@ -134,18 +133,20 @@
type="text"
icon="el-icon-plus"
style="margin-right: 10px"
- @click="handleadd(scope.row)"
+ @click="handleAdd(scope.row)"
>娣诲姞瀛愬伐绋�</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-edit"
+ v-if="!isProject(scope.row.id)"
@click="handleUpdate(scope.row)"
>淇敼</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-delete"
+ v-if="!isProject(scope.row.id)"
@click="deleteById(scope.row)"
>鍒犻櫎</el-button>
</template>
@@ -165,18 +166,6 @@
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="宸ョ▼鍚嶇О" prop="projectName">
<el-input v-model="form.projectName" placeholder="璇疯緭鍏ュ伐绋嬪悕绉�" />
- </el-form-item>
- <el-form-item label="涓婚」鐩�" prop="projectInfoId">
- <el-row>
- <el-select v-model="form.projectInfoId" filterable style="width: 100%" placeholder="璇烽�夋嫨涓婚」鐩�">
- <el-option
- v-for="item in projectList"
- :key="'pp' + item.id"
- :label="item.projectName"
- :value="item.id">
- </el-option>
- </el-select>
- </el-row>
</el-form-item>
<el-row :gutter="20">
<el-col :span="12">
@@ -218,8 +207,9 @@
<el-date-picker v-model="form.year "
placeholder="閫夋嫨鏃堕棿"
style="width: 100%"
- type="date"
- value-format="yyyy-MM-dd HH:mm:ss"/>
+ type="year"
+ value-format="yyyy"
+ :picker-options="pickerOptions"/>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -237,6 +227,7 @@
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
import {approvalList,listDept} from "@/api/system/dept";
+import {getProjectProcess} from "@/api/projectProcess/projectProcess";
export default {
@@ -305,6 +296,15 @@
this.getDeptList();
},
methods: {
+ pickerOptions: {
+ // 杩欓噷鍙互娣诲姞鏇村鐨刾icker閫夐」锛屼絾涓虹畝鍖栫ず渚嬶紝鍙睍绀虹鐢ㄥ叾浠栨棩鏈熺殑閫昏緫
+ // 鍏抽敭璁剧疆锛氭樉绀哄勾浠介�夋嫨鍣�
+ pickers: ['year']
+ },
+ isProject(id) {
+ const numericPattern = /^\d+(\.\d+)?$/;
+ return numericPattern.test(id)
+ },
getProjectOwnerUnit(unitId) {
console.log(unitId)
// if (deptId) {
@@ -360,10 +360,10 @@
/** 鏌ヨ宸ョ▼搴撳垪琛� */
getList() {
this.loading = true;
- getProjectEngineerings(this.queryParams).then(res => {
- this.engineeringList = res.data;
- console.log(this.engineeringList)
- this.total = res.total;
+
+ getProjectProcess(this.queryParams).then(response => {
+ this.engineeringList = response.data;
+ this.total = response.total;
this.loading = false;
});
},
@@ -409,17 +409,18 @@
this.single = selection.length!==1
this.multiple = !selection.length
},
- handleadd(row){
+ handleAdd(row){
this.reset();
this.open = true;
this.title = "娣诲姞宸ョ▼";
- this.addId = row.id;
- },
- /** 鏂板鎸夐挳鎿嶄綔 */
- handleAdd() {
- this.reset();
- this.open = true;
- this.title = "娣诲姞宸ョ▼";
+ if (this.isProject(row.id)) {
+ this.form.projectInfoId = row.id
+ this.form.parent = '0'
+ } else {
+ this.form.projectInfoId = row.projectInfoId
+ this.form.parent = row.id
+ }
+
},
/** 淇敼鎸夐挳鎿嶄綔 */
handleUpdate(row) {
@@ -435,25 +436,15 @@
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
- if (this.addId != null){
- this.form.parent = this.addId;
+ if (! this.form.id){
addProjectEngineering(this.form).then(response => {
this.$modal.msgSuccess("鏂板鎴愬姛");
this.open = false;
this.getList();
});
- return;
- }
- //淇敼
- if (this.form.id != null) {
+ } else {
editProjectEngineering(this.form).then(response => {
this.$modal.msgSuccess("淇敼鎴愬姛");
- this.open = false;
- this.getList();
- });
- } else {//涓嶅瓨鍦╝ddId鐖跺伐绋嬫柊澧�
- addProjectEngineering(this.form).then(response => {
- this.$modal.msgSuccess("鏂板鎴愬姛");
this.open = false;
this.getList();
});
--
Gitblit v1.8.0