Parcourir la source

新增参数接口调用

duy il y a 7 mois
Parent
commit
2ce8fda702

+ 10 - 1
src/api/paramter/parmter.js

@@ -23,4 +23,13 @@ export const remove = (params) => {
         method: 'get',
         params
     })
-}
+}
+// 根据参树Id获取项目和合同段信息
+export const getProjectContractByParam = (params) => {
+    return request({
+        url: '/api/blade-manager/parameterelement/getProjectContract',
+        method: 'get',
+        params: params
+    })
+}
+

+ 9 - 5
src/views/manager/wbsinfo/addParamDialog.vue

@@ -1,5 +1,5 @@
 <template>
-    <el-dialog title="添加参数" :visible.sync="visible" width="30%" append-to-body @close="closeDialog">
+    <el-dialog :title="modalTitle" :visible.sync="visible" width="30%" append-to-body @close="closeDialog">
       <el-form :model="parameter" label-width="120px" :rules="rules" ref="form" label-position="left">
         <el-form-item label="参数名称" prop="paramName">
           <el-input v-model="parameter.paramName"></el-input>
@@ -51,6 +51,11 @@
     watch: {
       params: {
         handler: function(n) {
+          if(n.id){
+            this.modalTitle='编辑参数'
+          }else{
+            this.modalTitle='新增参数'
+          }
           this.parameter=n
           this.parameter.paramTypeVal=n.paramType.split(',')
         },
@@ -65,6 +70,7 @@
           type: false,
           remarks: ''
         },
+        modalTitle:'新增参数',
         paramTypeList:[],
         rules: {
           paramName: [
@@ -104,14 +110,12 @@
               ...this.parameter,
               paramType:this.parameter.paramTypeVal.join(','),
               
-             
-             
             }
             ).then((res) => {
             if(res.data.code==200){
+              this.$emit('add-parameter');
                 this.$message.success(res.data.msg)
-                this.$emit('add-parameter', this.parameter);
-               
+              
               }else{
                 this.$message.error(res.data.msg)
               }

+ 26 - 5
src/views/manager/wbsinfo/paramDetail.vue

@@ -2,9 +2,9 @@
   <div>
    
     <!-- 弹窗 -->
-    <el-dialog :title="params.title" :visible.sync="dialogVisible" width="60%" append-to-body @clocse="closeParamDialog">
+    <el-dialog title="参数信息" :visible.sync="dialogVisible" width="60%" append-to-body @clocse="closeParamDialog">
       <div>
-        <div class="sub-title">分部工程名称</div>
+        <div class="sub-title">{{ params.paramName }}</div>
         <!-- 搜索栏 -->
         <div class="search-container">
             <div>
@@ -113,7 +113,7 @@
     <!-- 选择元素弹窗 -->
      <checkEleDialog ref="checkEleDialogRef" @confirmCheck="confirmCheck"></checkEleDialog>
      <!-- 编辑参数弹窗 -->
-      <addParamDialog :visible.sync="editDialogVisible"   :params="params"/>
+      <addParamDialog :visible.sync="editDialogVisible"   :params="params" @add-parameter="addCardFinish" />
   </div>
 </template>
 
@@ -122,7 +122,7 @@ import checkEleDialog from './checkEleDialog.vue';
 import { getProjectList } from "@/api/manager/projectinfo";
 import { findContractByProjectId } from "@/api/manager/contractinfo";
 import addParamDialog from './addParamDialog.vue';
-import { remove } from "../../../api/paramter/parmter.js";
+import { remove,getProjectContractByParam} from "../../../api/paramter/parmter.js";
 export default {
     components:{
         checkEleDialog,
@@ -135,6 +135,9 @@ export default {
       params: {
         handler: function(n) {
           this.params=n
+          if(n.id){
+            this.getProjectListData()
+          }
         },
         deep: true,
       },
@@ -187,7 +190,7 @@ export default {
   methods: {
     show() {
       this.dialogVisible = true;
-      this.getProjectListData()
+    
     },
     closeParamDialog(){
       this.dialogVisible = false;
@@ -209,6 +212,10 @@ export default {
     handleEditParam(item){
       this.editDialogVisible=true
    
+    },
+    addCardFinish(){
+          console.log('编辑完成');
+          
     },
     handleEdit(index, row) {;
       this.addDialogVisible=true;
@@ -230,6 +237,9 @@ export default {
               type: "success",
               message:res.data.msg
             });
+
+            this.dialogVisible=false
+            this.$emit('finshDetail');
           });
     },
     handleDelete(index, row) {
@@ -238,9 +248,20 @@ export default {
     },
       //获取项目列表
     getProjectListData() {
+      console.log(this.params.id,'this.params.id');
+      
+      if(!this.params.id ){
         getProjectList(1, 999).then((res) => {
           this.projectList = res.data.data.records;
         });
+      }else{
+        getProjectContractByParam({
+          parameterId: this.params.id
+        }).then((res) => {
+          this.projectList = res.data.data.records;
+        });
+      }
+        
     },
     changeProject(val){
  

+ 8 - 2
src/views/manager/wbsinfo/parameter.vue

@@ -35,9 +35,9 @@
       </div>
       </div>
       <!-- 新增弹窗 -->
-         <paramDetail ref="paramDetailRef" :params="parameterRow"></paramDetail>
+         <paramDetail ref="paramDetailRef" :params="parameterRow" @finshDetail="finshDetail"></paramDetail>
           <!-- 新增弹窗 -->
-        <addParamDialog :visible.sync="dialogVisible" @add-parameter="addCard" />
+        <addParamDialog :visible.sync="dialogVisible" @add-parameter="addCardFinish" />
  </basic-container>
 </template>
 <script>
@@ -107,6 +107,12 @@ export default{
             console.log('新增')
             this.dialogVisible = true
         },
+        addCardFinish(){
+            this.getProjectPageList()
+        },
+        finshDetail(){
+            this.getProjectPageList()
+        },
         handleSetParameterName(item){
             console.log(item)
             this.parameterRow = item