Browse Source

修改项目成员

yuanyiming 2 years ago
parent
commit
f4038af860

+ 18 - 1
package-lock.json

@@ -15,6 +15,7 @@
         "less-loader": "^11.1.0",
         "vue": "^2.6.14",
         "vue-router": "^3.5.1",
+        "vue-uuid": "^3.0.0",
         "vue2-editor": "^2.10.3",
         "vuex": "^3.6.2",
         "vuex-persistedstate": "^4.1.0"
@@ -2456,6 +2457,11 @@
         "@types/node": "*"
       }
     },
+    "node_modules/@types/uuid": {
+      "version": "8.3.4",
+      "resolved": "https://registry.npmmirror.com/@types/uuid/-/uuid-8.3.4.tgz",
+      "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw=="
+    },
     "node_modules/@types/ws": {
       "version": "8.5.4",
       "resolved": "https://registry.npmmirror.com/@types/ws/-/ws-8.5.4.tgz",
@@ -11249,7 +11255,6 @@
       "version": "8.3.2",
       "resolved": "https://registry.npmmirror.com/uuid/-/uuid-8.3.2.tgz",
       "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
-      "dev": true,
       "bin": {
         "uuid": "dist/bin/uuid"
       }
@@ -11571,6 +11576,18 @@
       "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==",
       "dev": true
     },
+    "node_modules/vue-uuid": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmmirror.com/vue-uuid/-/vue-uuid-3.0.0.tgz",
+      "integrity": "sha512-+5DP857xVmTHYd00dMC1c1gVg/nxG6+K4Lepojv9ckHt8w0fDpGc5gQCCttS9D+AkSkTJgb0cekidKjTWu5OQQ==",
+      "dependencies": {
+        "@types/uuid": "^8.3.4",
+        "uuid": "^8.3.2"
+      },
+      "peerDependencies": {
+        "vue": ">= 3.0.0"
+      }
+    },
     "node_modules/vue2-editor": {
       "version": "2.10.3",
       "resolved": "https://registry.npmmirror.com/vue2-editor/-/vue2-editor-2.10.3.tgz",

+ 1 - 0
package.json

@@ -15,6 +15,7 @@
     "less-loader": "^11.1.0",
     "vue": "^2.6.14",
     "vue-router": "^3.5.1",
+    "vue-uuid": "^3.0.0",
     "vue2-editor": "^2.10.3",
     "vuex": "^3.6.2",
     "vuex-persistedstate": "^4.1.0"

+ 7 - 0
src/App.vue

@@ -388,6 +388,13 @@
               text-align-last: justify;
               transform: translate(0,22%);
             }
+            input::-webkit-outer-spin-button,
+            input::-webkit-inner-spin-button {
+              -webkit-appearance: none !important;
+            }
+            input[type='number'] {
+              -moz-appearance: textfield;
+            }
           }
         .footer{
           width: 100%;

+ 2 - 0
src/main.js

@@ -8,6 +8,8 @@ import './assets/sc/iconfont.css'
 import ajax from './api/userApi' //封装axios
 Vue.prototype.ajax = ajax
 
+
+
 Vue.config.productionTip = false
 
 new Vue({

+ 1 - 1
src/views/projectApply/projectApplication.vue

@@ -110,7 +110,7 @@
           prop="name"
           align="center"
           label="所在部门"
-          min-width="6%">
+          min-width="10%">
         </el-table-column>
         <el-table-column
           prop="money"

+ 57 - 21
src/views/projectApply/projectApplicationApply.vue

@@ -136,7 +136,7 @@
                   <template #default="scope">
                       <div class="operations">
                           <!-- <el-button type="primary" > -->
-                              <el-button type="primary" @click="amendDialogData(scope)" size="mini">修改</el-button>
+                              <el-button type="primary" @click="amendDialogData(scope.row)" size="mini">修改</el-button>
                               <el-button type="primary" @click="Del(scope)" size="mini">删除</el-button>
                           <!-- </el-button> -->
                       </div>
@@ -176,7 +176,7 @@
 
       <!--添加成员dialog对话框开始 -->
       <el-dialog
-          :title="data.DialogStatus?'添加成员':'修改成员'"
+          title="添加成员"
           :visible.sync="addMemberDialog"
           :modal="true"
           :close-on-click-modal="true"
@@ -200,7 +200,7 @@
             <div class="littleBlock">
               <div class="dialogLabel">电话</div>
               <div>
-                <el-input v-model="data.Member.phone"></el-input>
+                <el-input type="number" onkeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)))" v-model="data.Member.phone"></el-input>
               </div>
             </div>
             <div slot="footer" class="footer">
@@ -209,7 +209,41 @@
             </div>
       </el-dialog>
       <!--添加成员dialog对话框结束 -->
-         
+      <!--修改成员dialog对话框开始 -->
+      <el-dialog
+          title="修改成员333"
+          :visible.sync="amendMemberDialog"
+          :modal="true"
+          :close-on-click-modal="true"
+          class="AddMember"
+          :before-close="init">
+
+            <div class="littleBlock">
+              <div class="dialogLabel">姓名</div>
+              <div>
+                <el-input v-model="data.Member2.name"></el-input>
+              </div>
+            </div>
+
+            <div class="littleBlock">
+              <div class="dialogLabel">班级</div>
+              <div>
+                <el-input v-model="data.Member2.class"></el-input>
+              </div>
+            </div>
+
+            <div class="littleBlock">
+              <div class="dialogLabel">电话</div>
+              <div>
+                <el-input type="number" onkeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)))" v-model="data.Member2.phone"></el-input>
+              </div>
+            </div>
+            <div slot="footer" class="footer">
+              <el-button type="primary" @click="commit2" class="diaBtn" >确认提交</el-button>
+              <el-button @click="init" class="diaBtn">取消</el-button>
+            </div>
+      </el-dialog>
+      <!--修改成员dialog对话框结束 -->
 
     </div>
   
@@ -223,22 +257,25 @@
         return {
           input:"",
           addMemberDialog:false,
+          amendMemberDialog:false,
+          rowData:''
         }
       },
       methods:{
         init(){
-          this.addMemberDialog=false
+          this.addMemberDialog=false;
+          this.amendMemberDialog=false
+
         },
         addMember(){   //添加项目成员
           this.addMemberDialog=true
-          this.data.DialogStatus=1;
+          this.data.Member={}
         },
-        amendDialogData(val){   //修改项目成员信息
-            this.addMemberDialog=true
-            this.data.DialogStatus=0;
-            
+        amendDialogData(val){   //修改项目成员信息对话框显示
+          this.amendMemberDialog=true
+          Object.assign(this.data.Member2,val)
+          // console.log(this.data.Member2);
         },
-        
         backBtn1(){  // 上一步
           this.$router.push('/projectApplication')
         },
@@ -246,18 +283,17 @@
         backBtn(){   // 下一步
             this.next();
         },
-        commit(){   //确定添加成员
-            if (this.data.DialogStatus) {
-              this.addPerson();
-              this.addMemberDialog=false
-              return
-            }else{
-              this.amend()
-              this.addMemberDialog=false
-            }
+        commit(){   //确定添加成员     
+            this.addPerson();
+            this.init()
         },
-        Del(val){
+        commit2(){   //确定修改成员
+            this.amend(this.rowData)
+            this.init()
 
+        },
+        Del(val){
+            
         },
         toPage(val){
             if (val==1) {

+ 3 - 1
src/views/projectApply/projectApplicationApply3.vue

@@ -321,7 +321,6 @@ import { VueEditor } from "vue2-editor";
 <style lang="less">
 //对话框样式
 
-
   .el-input__inner{
     color: #000;
     font-size: 16px;
@@ -443,6 +442,9 @@ import { VueEditor } from "vue2-editor";
             input[type='number'] {
               -moz-appearance: textfield;
             }
+          .el-input__inner{
+              line-height: 1px!important;
+            }
           }
         .footer{
           width: 100%;

+ 37 - 40
src/views/projectApply/projectApplicationApplyMain.vue

@@ -48,6 +48,7 @@
   
   <script>
   // 引入项目详情三个页面
+  import { uuid } from 'vue-uuid';
   import projectApplicationApply from './projectApplicationApply.vue';
   import projectApplicationApply2 from './projectApplicationApply2.vue';
   import projectApplicationApply3 from './projectApplicationApply3.vue';
@@ -74,11 +75,19 @@
                 sortOptions: [], //分类下拉框
                 textarea:'每周星期四为活动时间',   //项目简介
                 Member:{    //添加成员
+                    id:'',
+                    name:'',
+                    class:'',
+                    phone:''
+                },
+                Member2:{    //修改成员
+                    id:'',
                     name:'',
                     class:'',
                     phone:''
                 },
                 tableData:[{    //成员列表
+                    id:'1',
                     name:'徐晓慧',
                     class:'22电子通信G5',
                     phone:'13751177411',
@@ -126,6 +135,7 @@
                     twelve:'',
                     remark:''
                 },
+                items2:{}, //复制items,可以确定后清除数据
                 tableData2:[],// 经费明细列表数据
                
                 dialog:{     //经费明细添加对话框
@@ -146,10 +156,12 @@
                 if(this.status==0)return;
                 this.status--;
             },
-            addPerson(){  //立项基础信息页面添加人员和修改数据框
-              this.projectApplicationApply1.addMemberDialog=false;
-              let p=this.projectApplicationApply1.Member;
-              this.projectApplicationApply1.tableData.push(p);
+            addPerson(){  //立项基础信息页面添加人员
+              let a=this.projectApplicationApply1
+              a.addMemberDialog=false;
+              a.Member.id=uuid.v1()
+              a.tableData.push(a.Member);
+              a.Member={}
             },
             getProjectDepartmentData(){  //获取项目立项申请基础信息页面所在部门数据
               let param={
@@ -185,43 +197,36 @@
             },
            
             amend(val){      //立项基础信息页面修改人员信息
-              console.log('111'); 
-              let p=this.projectApplicationApply1;
-
-                let param={
-                  uid:this.$store.state.userInfo.userid,
-                  nid:val,
-                  personName:p.Member.name,
-                  class:p.Member.Class,
-                  phone:p.Member.phone
-                }
-                console.log(param);
-                return
-                this.ajax
-                      .get(this.$store.state.api+'',param)
-                      .then(res=>{
-                        console.log(res);
-                      },err=>{
-                        console.log(err);
-                      })
+              let a=this.projectApplicationApply1
+               
+              //  console.log(a.Member2);
+               a.tableData.forEach((e,i)=>{
+                    if(e.id==a.Member2.id) {
+                      Object.assign(e,a.Member2)
+                    }
+               })
             },
             //立项基础信息页面删除功能在它自己页面人员信息
 
 
-
-
+            init(){
+                //重置
+                this.projectApplicationApply1.addMemberDialog=false
+                this.submitHint=false;
+                
+            },
             confirmSetFund(){   //预算经费设置经费对话框提交
-              let data=this.projectApplicationApply3
+              let data=this.projectApplicationApply3;
+              
               for(let key in data.items){
                 if (data.items[key]=='') {
                   data.items[key]='-'
                 }
               }
-              data.tableData.splice(0,1,data.items)
-              // for(let key in data.items){
-              //     data.items[key]=''
-              // }
-            },
+              data.items2=data.items;
+              data.tableData.splice(0,1,data.items2)
+              // data.items={}   解开就是点击确定后清空
+              },
             addFundDetail(){    //预算经费页面经费添加按钮
               let p=this.projectApplicationApply3;
                 let data={
@@ -248,12 +253,8 @@
               
               let newData1 = c.tableData[0];
               for(let key in newData1){
-               
                 if (newData1[key]=='-') {
-                  // console.log(newData1[key]);
                   newData1[key]=0
-                  // console.log(key+'--'+newData1[key]);
-                //   // newData1[key]=0
                 }
               }
               let param={
@@ -280,11 +281,7 @@
                         console.log(err);
                       })
             },
-            init(){
-                //重置
-                this.projectApplicationApply1.addMemberDialog=false
-                this.submitHint=false;
-            },
+            
            
         },
         created(){      //实例初始化完成后调用