liuhj 6 months ago
parent
commit
9c0a4de1b9
2 changed files with 475 additions and 13 deletions
  1. 441 12
      src/components/OP/EntryDetails.vue
  2. 34 1
      src/components/Resource/PerformanceT.vue

+ 441 - 12
src/components/OP/EntryDetails.vue

@@ -226,7 +226,7 @@
                             label=" 费用标准"
                             width="180">
                                 <template slot-scope="scope">
-                                    <el-input-number disabled size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
+                                    <el-input-number @input="zhusuinput(scope.row)" size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
                             <el-table-column
@@ -316,7 +316,7 @@
                             label=" 费用标准"
                             width="180">
                                 <template slot-scope="scope">
-                                    <el-input-number disabled size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
+                                    <el-input-number size="mini" @input="mealsinput(scope.row)" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
                             <el-table-column
@@ -406,7 +406,7 @@
                             label=" 费用标准"
                             width="180">
                                 <template slot-scope="scope">
-                                    <el-input-number disabled size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
+                                    <el-input-number @input="Miscellaneousinput(scope.row)" size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
                             <el-table-column
@@ -529,6 +529,106 @@
                         </el-table>
                     </div>
                 </div>
+                <div class="Entry-form-li">
+                    <div class="Entry-li-lable">
+                        <div style="display: flex;align-items: center;">
+                            <el-checkbox v-model="choiceSeven"></el-checkbox>
+                            <div class="li-lable">七、其他:</div>
+                            <div style="display: flex;">
+                                <div class="li-lable">
+                                    <label>合计:</label>
+                                    <div class="sub-boxs">{{otherExpense|numFilter}}</div>
+                                    <span>元/人</span>
+                                </div>
+                            </div>
+                        </div>
+                        <div class="btn-Entry">
+                            <el-button type="primary" @click="addlist('其他')" size="mini">新 增</el-button>
+                        </div>
+                    </div>
+                    <div class="Entry-li-inif">
+                        <el-table
+                            :data="otherData"
+                            border
+                            style="width: 100%">
+                            <el-table-column
+                            prop="index"
+                            label="第几项"
+                            width="180">
+                                <template slot-scope="scope">
+                                    <el-input-number size="mini"  :controls="false" v-model="scope.row.index"></el-input-number>
+                                </template>
+                            </el-table-column>
+                            <el-table-column
+                            style="position: relative;"
+                            prop="setDataId"
+                            label="费用类型"
+                            width="180">
+                                <!-- <template slot-scope="scope">
+                                    <el-input size="mini" v-model="scope.row.city"></el-input>
+                                </template> -->
+                                <template slot-scope="scope">
+                                    <el-select size="mini" v-model="scope.row.setDataId" filterable placeholder="请选择">
+                                        <el-option
+                                            v-for="item in otherfylx"
+                                            :key="item.id"
+                                            :label="item.name"
+                                            :value="item.id"
+                                            >
+                                            <span style="float: left">{{item.name}}</span>
+                                            <!-- <span style="float: right; color: #8492a6; font-size: 13px">{{item.city}}</span> -->
+                                        </el-option>
+                                    </el-select>
+                                </template>
+                            </el-table-column>
+                            <el-table-column
+                            prop="cost"
+                            label=" 费用标准"
+                            width="180">
+                                <template slot-scope="scope">
+                                    <el-input-number @input="otherinput(scope.row)" size="mini" :precision="2" :controls="false" v-model="scope.row.cost"></el-input-number>
+                                </template>
+                            </el-table-column>
+                            <el-table-column
+                            prop="currencyName"
+                            label=" 币 种"
+                            width="180">
+                                <template slot-scope="scope">
+                                    <el-select @change="othercurrencychange(scope.row.currency,scope.row)"  size="mini" v-model="scope.row.currency" filterable placeholder="请选择">
+                                        <el-option
+                                            v-for="item in othercurrencys"
+                                            :key="item.currencyId"
+                                            :label="item.currencyCode"
+                                            :value="item.currencyId"
+                                            >
+                                            <span style="float: left">{{item.currencyCode+' 汇率:'+item.rate}}</span>
+                                        </el-option>
+                                    </el-select>
+                                    <!-- <el-input size="mini" v-model="scope.row.currencyName"></el-input> -->
+                                </template>
+                            </el-table-column>
+                            <el-table-column
+                            prop="subTotal"
+                            label="费用小计"
+                            width="180">
+                                <template slot-scope="scope">
+                                    <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>&nbsp;CNY
+                                </template>
+                            </el-table-column>
+                            <el-table-column
+                            prop="address"
+                            label="操 作">
+                                <template slot-scope="scope">
+                                    <el-button
+                                    style="color: #fff;"
+                                    size="mini"
+                                    type="danger"
+                                    @click="DeleteOtherExpenses(scope.$index,scope.row,otherData )">删除</el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                    </div>
+                </div>
                 <div class="Entry-form-li">
                     <div class="Entry-li-lables">
                         <div class="li-lable">费用总计:</div>
@@ -583,11 +683,13 @@ export default {
             choiceFour:false,//伙食费合计选择框
             choiceFive:false,//公杂费合计选择框
             choiceSix:false,//培训费用选择框
+            choiceSeven:false,//其他费用选择框
             sumJJC:false,//经济舱小计选择框
             sumGWC:false,//公务舱小计选择框
             sumTDC:false,//头等舱小计选择框
             airJJC_Checked:false,//经济舱选择框
             airGWC_Checked:false,//公务舱选择框
+            airTDC_Checked:false,//公务舱选择框
 
             userId:'',
             token:'',
@@ -621,11 +723,13 @@ export default {
             TotalMeals:0,//伙食费合计
             TotalMiscellaneous:0,//公杂费合计
             trainingExpense:0,//培训费合计
+            otherExpense:0,//其他费用合计
 
             quarterageData: [],
             boardWagesData:[],
             miscellaneousFeeData:[],
             trainingExpenseData:[],
+            otherData:[],
             placeinif:[],
             //下拉框
             treeData: "",
@@ -651,6 +755,9 @@ export default {
             cubtn:false,
             getvisafeebtn:false,
             visainfo:{},
+            //其他币种
+            othercurrencys:[],
+            otherfylx:[]
         }
     },
     methods:{
@@ -677,7 +784,52 @@ export default {
                     }
                     that.listvalueoptions=res.data.data.wordTypeData;
                     that.tablevalueoptions=res.data.data.excelTypeData;
-                    that.GetEnterExitCostInfobyDiId()
+                    that.GetEnterExitCostInfobyDiId();
+                    that.PostGroupTeamRateByDiIdAndCTableId();
+                }
+            })
+        },
+        //获取币种
+        PostGroupTeamRateByDiIdAndCTableId(){
+            var url = "/api/Business/PostGroupTeamRateByDiIdAndCTableId"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    portType: 1,
+                    diId: that.value,
+                    cTable:98
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.othercurrencys=res.data.data.teamRates;
+                } else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
+        //获取类型
+        QuerySetData(){
+            var url = "/api/System/QuerySetData"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    dataType:92
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.otherfylx=res.data.data;
+                } else {
+                    that.$message.error(res.data.msg);
                 }
             })
         },
@@ -789,6 +941,7 @@ export default {
             this.TotalMeals=0;//伙食费合计
             this.TotalMiscellaneous=0;//公杂费合计
             this.trainingExpense=0;//培训费合计
+            this.otherExpense=0;//其他费合计
 
             this.DomesticFees={
                 visafees:'',//签证费
@@ -815,6 +968,7 @@ export default {
             this.choiceFour=false//伙食费合计选择框
             this.choiceFive=false//公杂费合计选择框
             this.choiceSix=false//培训费用选择框
+            this.choiceSeven=false//其他费用选择框
             this.sumJJC=false//经济舱小计选择框
             this.sumGWC=false//公务舱小计选择框
             this.sumTDC=false//公务舱小计选择框
@@ -1182,7 +1336,88 @@ export default {
                     remark:'',
                 },
             ]
-
+            this.otherData=[
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:1,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:2,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:3,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:4,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:5,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:6,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:7,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+                {
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:8,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                },
+            ]
             var url = "/api/Groups/GetEnterExitCostInfobyDiId"
             var that = this
             this.$axios({
@@ -1222,6 +1457,7 @@ export default {
                     that.choiceFour=res.data.data.choiceFour==1?true:false;
                     that.choiceFive=res.data.data.choiceFive==1?true:false;
                     that.choiceSix=res.data.data.choiceSix==1?true:false;
+                    that.choiceSeven=res.data.data.otherExpenses_Checked==1?true:false;
                     that.sumJJC=res.data.data.sumJJC==1?true:false;
                     that.sumGWC=res.data.data.sumGWC==1?true:false;
                     that.sumTDC=res.data.data.sumTDC==1?true:false;
@@ -1247,6 +1483,11 @@ export default {
                     for(let d=0;d<res.data.data.trainingExpenseData.length;d++){
                         that.trainingExpense+=res.data.data.trainingExpenseData[d].subTotal
                     }
+                    //其他费
+                    that.otherData=res.data.data.dayOtherPriceData;
+                    for(let e=0;e<res.data.data.dayOtherPriceData.length;e++){
+                        that.otherExpense+=res.data.data.dayOtherPriceData[e].subTotal
+                    }
                     that.storageid=res.data.data.id;
                     // that.GetNationalTravelFeeData();
                     that.fullscreenLoading=false;
@@ -1332,6 +1573,34 @@ export default {
             }
             // this.mealschangeSelect(this.boardWagesData,item,index)
         },
+        //住宿费费用标准值改变
+        zhusuinput(val){
+            var rate=0
+            for(let j=0;j<this.currencys.length;j++){
+                if(this.currencys[j].currencyName==val.currencyName){
+                    rate=this.currencys[j].rate;
+                }
+            }
+            val.subTotal=Number(val.cost)*Number(rate);
+            this.TotalAccommodationFee=0;
+            for(let a=0;a<this.quarterageData.length;a++){
+                this.TotalAccommodationFee+=this.quarterageData[a].subTotal
+            }
+        },
+        //伙食费费用标准值改变
+        mealsinput(val){
+            var rate=0
+            for(let j=0;j<this.currencys.length;j++){
+                if(this.currencys[j].currencyName==val.currencyName){
+                    rate=this.currencys[j].rate;
+                }
+            }
+            val.subTotal=Number(val.cost)*Number(rate);
+            this.TotalMeals=0;
+            for(let a=0;a<this.boardWagesData.length;a++){
+                this.TotalMeals+=this.boardWagesData[a].subTotal
+            }
+        },
         //伙食地区选择
         mealschangeSelect(val,item,index){
             var rate=0
@@ -1371,6 +1640,20 @@ export default {
             }
             this.MiscellaneouschangeSelect(this.miscellaneousFeeData,item,index)
         },
+        //公杂费费用标准值改变
+        Miscellaneousinput(val){
+            var rate=0
+            for(let j=0;j<this.currencys.length;j++){
+                if(this.currencys[j].currencyName==val.currencyName){
+                    rate=this.currencys[j].rate;
+                }
+            }
+            val.subTotal=Number(val.cost)*Number(rate);
+            this.TotalMiscellaneous=0;
+            for(let a=0;a<this.miscellaneousFeeData.length;a++){
+                this.TotalMiscellaneous+=this.miscellaneousFeeData[a].subTotal
+            }
+        },
         //公杂费地区选择
         MiscellaneouschangeSelect(val,item,index){
             var rate=0
@@ -1411,6 +1694,8 @@ export default {
         },
         //培训费费用标准值改变
         Traininginput(val){
+            console.log(val);
+            
             var rate=0
             for(let j=0;j<this.currencys.length;j++){
                 if(this.currencys[j].currencyName==val.currencyName){
@@ -1442,11 +1727,47 @@ export default {
                 }
             }
             val.subTotal=Number(val.cost)*Number(rate);
-            this.trainingExpense=0;
+            
             for(let a=0;a<this.trainingExpenseData.length;a++){
                 this.trainingExpense+=this.trainingExpenseData[a].subTotal
             }
         },
+        //其他币种值改变
+        othercurrencychange(val,row){
+            // console.log(val,row);
+            
+            // row.currency=val;
+            var obj={};
+            var rate=0;
+            obj= this.othercurrencys.find(function(i){
+                return i.currencyId ===val;
+            });
+            rate=obj.rate
+            row.subTotal=Number(row.cost)*Number(rate);
+            this.otherExpense=0;
+            for(let a=0;a<this.otherData.length;a++){
+                this.otherExpense+=this.otherData[a].subTotal;
+            }
+        },
+        //其他费用标准值改变
+        otherinput(val){
+            console.log(val.currencyName);
+            if (val.currencyName==undefined) {
+                return
+            }
+            var obj={}
+            var rate=0
+            obj= this.othercurrencys.find(function(i){
+                return i.currencyId ===val.currencyName
+            });
+            console.log(obj);
+            rate=obj.rate
+            val.subTotal=Number(val.cost)*Number(rate);
+            this.otherExpense=0;
+            for(let a=0;a<this.otherData.length;a++){
+                this.otherExpense+=this.otherData[a].subTotal
+            }
+        },
         //新增list
         addlist(text){
             if(text=="住宿费"){
@@ -1523,6 +1844,19 @@ export default {
                     remark:'',
                 })
             }
+            if(text=="其他"){
+                this.otherData.push({
+                    id:0,
+                    diId:this.value,
+                    setDataId:'',
+                    index:this.otherData.length!=0?(this.otherData[this.otherData.length-1].index)+1:1,
+                    cost:'',
+                    cost:0,
+                    currency:0,
+                    subTotal:0,
+                })
+            }
+
         },
         //保存
         storage:debounce(function(){
@@ -1597,11 +1931,26 @@ export default {
                         })
                     }
                 }
-                this.storageAPI(quarterageDatas,boardWagesDatas,miscellaneousFeeDatas,trainingExpenseDatas)
+                //其他费
+                var otherDatas=[];
+                for(let c=0;c<this.otherData.length;c++){
+                    if(this.otherData[c].setDataId!=''){
+                        otherDatas.push({
+                            id:this.otherData[c].id,
+                            diId:this.otherData[c].diid,
+                            index:this.otherData[c].index,
+                            setDataId:this.otherData[c].setDataId,
+                            cost:this.otherData[c].cost,
+                            currency:this.otherData[c].currency,
+                            subTotal:this.otherData[c].subTotal,
+                        })
+                    }
+                }
+                this.storageAPI(quarterageDatas,boardWagesDatas,miscellaneousFeeDatas,trainingExpenseDatas,otherDatas)
             })
         },1000,true),
         //保存API
-        storageAPI(arrthre,arrfour,arrfive,arrsix){
+        storageAPI(arrthre,arrfour,arrfive,arrsix,arrSeven){
             var url = "/api/Groups/PostEnterExitCostOperate"
             var that = this
             this.$axios({
@@ -1626,6 +1975,7 @@ export default {
                     ticket: that.DomesticFees.ticketsExhibitionL,
                     safe: that.DomesticFees.insurance,
                     choiceTwo: that.choiceTwo?1:0,
+                    otherExpenses_Checked: that.choiceSeven?1:0,
                     sumJJC:that.sumJJC?1:0,
                     sumGWC:that.sumGWC?1:0,
                     sumTDC:that.sumTDC?1:0,
@@ -1636,6 +1986,7 @@ export default {
                     airGW:that.TotalExpenses.BusinessClass,
                     airTD:that.TotalExpenses.Firstclass,
                     cityTranffic: that.TotalExpenses.TravellingExpenses,
+                    dayOtherPriceData:arrSeven,
                     currencys: that.currencys,
                     choiceThree:that.choiceThree?1:0,
                     quarterageData: arrthre,
@@ -1644,9 +1995,11 @@ export default {
                     choiceFive:that.choiceFive?1:0,
                     miscellaneousFeeData:arrfive,
                     choiceSix:that.choiceSix?1:0,
+                    //加参数
                     trainingExpenseData:arrsix,
                     airJJC_Checked:that.airJJC_Checked?1:0,
                     airGWC_Checked:that.airGWC_Checked?1:0,
+                    airTDC_Checked:that.airTDC_Checked?1:0,
                 }
             }).then(function (res) {
                 if(res.data.code==200){
@@ -1722,6 +2075,7 @@ export default {
             var hsf
             var gzf
             var pxf
+            var qtfy
             if (this.choiceOne == true) {
                 jnfy=this.DomesticFees.total;
             } else {
@@ -1747,28 +2101,88 @@ export default {
             } else {
                 pxf= 0;
             }
+            if (this.choiceSeven == true) {
+                qtfy=this.otherExpense;
+            } else {
+                qtfy= 0;
+            }
             if (this.sumJJC == true) {
                 jjcxj=this.TotalExpenses.EconomyClasstotal;
-                this.jjctotal=jnfy+jjcxj+zsf+hsf+gzf+pxf;
+                this.jjctotal=jnfy+jjcxj+zsf+hsf+gzf+pxf+qtfy;
             } else {
                 jjcxj= 0;
                 this.jjctotal=0;
             }
             if (this.sumGWC == true) {
                 gwcxj=this.TotalExpenses.BusinessClasstotal;
-                this.gwctotal=jnfy+gwcxj+zsf+hsf+gzf+pxf;
+                this.gwctotal=jnfy+gwcxj+zsf+hsf+gzf+pxf+qtfy;
             } else {
                 gwcxj= 0;
                 this.gwctotal=0;
             }
             if (this.sumTDC == true) {
                 tdcxj=this.TotalExpenses.Firstclasstotal;
-                this.tdctotal=jnfy+tdcxj+zsf+hsf+gzf+pxf;
+                this.tdctotal=jnfy+tdcxj+zsf+hsf+gzf+pxf+qtfy;
             } else {
                 tdcxj= 0;
                 this.tdctotal=0;
             }
         },
+        //其他删除
+        DeleteOtherExpenses(index,row,rows){
+            console.log(index,row,rows);
+            this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning'
+            }).then(() => {{
+                if(row.id==0){
+                    this.$message({
+                        type: 'success',
+                        message: '删除成功'
+                    });
+                    rows.splice(index, 1);
+                    this.otherExpense=0;
+                    for(let a=0;a<rows.length;a++){
+                        this.otherExpense+=rows[a].subTotal;
+                    }
+                    return;
+                }
+                var url = "/api/Groups/DeleteOtherExpenses"
+                var that = this
+                this.$axios({
+                    method: 'post',
+                    url: url,
+                    headers: {
+                        Authorization: 'Bearer ' + that.token
+                    },
+                    data:{
+                        portType: 1,
+                        id: row.id,
+                        deleteUserId: that.userId
+                    }
+                }).then(function (res) {
+                    if(res.data.code==200){
+                        that.$message({
+                            type: 'success',
+                            message: res.data.msg
+                        });
+                        rows.splice(index, 1);
+                        this.otherExpense=0;
+                        for(let a=0;a<rows.length;a++){
+                            this.otherExpense+=rows[a].subTotal;
+                        }
+                    }else{
+                        that.$message.error(res.data.msg);
+                    }
+                })
+            }}).catch(() => {
+                this.$message({
+                    type: 'info',
+                    message: '已取消删除'
+                });
+            });
+        },
         //删除
         deleteRow(index,row,rows,val){
             this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
@@ -1927,6 +2341,10 @@ export default {
         choiceSix(val){//培训费用选择框
             this.calculation();
         },
+        choiceSeven(val){//其他费用选择框
+            this.calculation();
+        },
+        //加参数
         sumJJC(val){//经济舱小计选择框
             this.calculation();
         },
@@ -1972,6 +2390,13 @@ export default {
                 // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
+        otherExpense:{
+            handler(newVal,oldVal) {
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+            },
+        },
         'TotalExpenses.EconomyClasstotal':{
             handler(newVal,oldVal) {
                 this.calculation();
@@ -2086,6 +2511,9 @@ export default {
             deep:true
         }
     },
+    created(){
+        this.QuerySetData();
+    },
     mounted(){
         this.token=JSON.parse(localStorage.getItem('userinif')).token;
         this.userId=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
@@ -2095,7 +2523,8 @@ export default {
     },
     destroyed(){
         window.localStorage.removeItem('sgvalue');
-    }
+    },
+    
 }
 </script>
 <style>

+ 34 - 1
src/components/Resource/PerformanceT.vue

@@ -3,7 +3,7 @@
         <el-dialog width="830px" class="settings-dialog" title="设置" :visible.sync="dialogTableVisible">
             <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
                 <div class="settings-form">
-                    <el-form-item label="考核项目">
+                    <!-- <el-form-item label="考核项目">
                         <el-select value-key="id" @change="itemchange" v-model="ruleForm.id" placeholder="请选择活动区域">
                             <el-option v-for="(item,index) in tablelist" :key="index" :label="item.name" :value="item.id"></el-option>
                         </el-select>
@@ -12,6 +12,11 @@
                         <el-select v-model="ruleForm.parentId" placeholder="请选择活动区域">
                             <el-option v-for="(item,index) in Assessmentrules" :key="index" :label="item.name" :value="item.id"></el-option>
                         </el-select>
+                    </el-form-item> -->
+                    <el-form-item label="上级菜单">
+                        <el-select filterable clearable v-model="ruleForm.parentmenu" placeholder="请选择上级菜单">
+                            <el-option v-for="(item,index) in parentmenuarr" :key="index" :label="item.name" :value="item.parentId"></el-option>
+                        </el-select>
                     </el-form-item>
                     <el-form-item label="名称" prop="name">
                         <el-input v-model="ruleForm.name"></el-input>
@@ -411,11 +416,13 @@ export default {
             value: '',
             dialogTableVisible:true,
             Assessmentrules:[],
+            parentmenuarr:[],
             ruleForm: {
                 name: '',
                 assessmentProportion: '',
                 assessmentStandard: '',
                 parentId: '',
+                parentmenu:'',
                 id:'',
                 createId: '',
                 remark: '',
@@ -455,6 +462,31 @@ export default {
             });
         },
         //获取数据
+        QueryAssessmentSettingListOffset(){
+            var url = "/api/PersonnelModule/QueryAssessmentSettingListOffset"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer '
+                },
+                data:{
+                    pageIndex:1,
+                    pageSize:9999,
+                    searchValue:'',
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.parentmenuarr=res.data.data.list;
+                } else {
+                    that.$message.error(res.data.msg);
+                }
+            }).catch(function (error) {
+                that.$message.error("出错!,请联系信息部。");
+            });
+        },
+        //获取数据
         GetPerformanceList(){
             var url = "/api/PersonnelModule/GetPerformanceList?userid="+this.value
             var that = this
@@ -568,6 +600,7 @@ export default {
     mounted(){
         this.GetWageSheetBasicsDataSource();
         this.getheight();
+        this.QueryAssessmentSettingListOffset();
     },
     created(){
         window.addEventListener('resixe',this.getheight)