Browse Source

Merge branch 'master' of http://132.232.92.186:3000/XinXiBu/oa-system

yuanrf 9 months ago
parent
commit
c57800443c

+ 34 - 1
src/components/OP/AirTicketRes.vue

@@ -140,10 +140,43 @@
                         </el-popover>
                     </div>
                 </div>
-                <div v-if="budgeting.length==0">
+                <div style="display: flex;align-items: center;" v-if="budgeting.length==0">
                     <div class="costbudgeting-li">
                         未设置团组成本或成本未通知
                     </div>
+                    <el-popover
+                        placement="bottom"
+                        width="662"
+                        trigger="hover">
+                        <el-table max-height="600" border :data="rollcallarr">
+                            <el-table-column width="100" property="date" label="姓名">
+                                <template slot-scope="scope">
+                                    {{ scope.row.lastName}}{{scope.row.firstName}}
+                                </template>
+                            </el-table-column>
+                            <el-table-column width="200" property="birthDay" label="拼音">
+                                <template slot-scope="scope">
+                                    {{ pinyingxing(scope.row.lastName) }}/{{  pinyingxing(scope.row.firstName) }}
+                                </template>
+                            </el-table-column>
+                            <el-table-column width="50" property="sex" label="性别">
+                                <template slot-scope="scope">
+                                    {{ scope.row.sex==0?'男':'女'}}
+                                </template>
+                            </el-table-column>
+                            <el-table-column width="110" property="birthDay" label="生日">
+                                <template slot-scope="scope">
+                                    {{ fgarr(scope.row.birthDay) }}
+                                </template>
+                            </el-table-column>
+                            <el-table-column width="200"  label="身份证号码">
+                                <template slot-scope="scope">
+                                    {{ scope.row.idCardNo==""?'-':scope.row.idCardNo }}
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                        <span slot="reference" style="cursor: pointer;margin-left: 20px;">"移上查看客户名单"</span>
+                    </el-popover>
                 </div>
             </div>
             <template>

+ 18 - 6
src/components/OP/Groupedit.vue

@@ -13,7 +13,7 @@
                         </el-select>
                     </el-form-item>
                     <el-form-item label-width="120px" label="客户级别:" prop="grades">
-                        <el-select v-model="ruleForm.grades" placeholder="请选择客户级别">
+                        <el-select @change="rankchange" v-model="ruleForm.grades" placeholder="请选择客户级别">
                             <el-option v-for="(item, index) in gradearr" :key="index" :label="item.name"
                                 :value="item.id"></el-option>
                         </el-select>
@@ -400,17 +400,15 @@ export default {
         },
         //提成等级值改变
         commissionlevel(val){
-            console.log(val)
-            console.log(this.opRoyaltyLvList)
             var tctext
             for(var tc=0;tc<this.opRoyaltyLvList.length;tc++){
                 if(this.opRoyaltyLvList[tc].id==val){
                     tctext=this.opRoyaltyLvList[tc].remark.split('&')
                 }
             }
-            this.ruleForm.opRoyaltyRemark='',
-            this.commissionleve=tctext,
-            console.log(tctext);
+            this.ruleForm.opRoyaltyRemark='';
+            this.commissionleve=tctext;
+            this.ruleForm.opRoyaltyRemark=tctext[0]
         },
         //处理时间
         disposeTime(val) {
@@ -552,6 +550,20 @@ export default {
             this.ruleForm.phonenumber=item.value.split('   ')[2];
             this.ruleForm.Wechat=item.value.split('   ')[3];
             this.splicingname();
+        },
+        rankchange(val){
+            if (val==771) {
+                this.ruleForm.opRoyaltyLv=999
+                this.commissionlevel(this.ruleForm.opRoyaltyLv)
+            }
+            if(val==772){
+                this.ruleForm.opRoyaltyLv=1000
+                this.commissionlevel( this.ruleForm.opRoyaltyLv)
+            }
+            if(val==770){
+                this.ruleForm.opRoyaltyLv=995
+                this.commissionlevel( this.ruleForm.opRoyaltyLv)
+            }
         }
     },
     beforeRouteEnter(to, from, next) {

+ 169 - 2
src/components/statistics/paymentstatement.vue

@@ -1,11 +1,154 @@
 <template>
     <div class="paymentstatement-all">
-        日付报表
+        <el-dialog width="60%" title="日常付款类型筛选" :visible.sync="dialogFormVisible">
+            <div class="paymentstatement-dialog-ul">
+                <div v-for="(item,index) in DailypaymentTypelist" :key="index" class="paymentstatement-dialog-li">
+                    <div>
+                        <div class="modulename">{{item.name}}</div>
+                        <div class="paymentstatement-dialog-type">
+                            <el-checkbox v-model='items.isChecked' v-for="(items,index) in item.subData" :key="index" :label="items.name"></el-checkbox>
+                        </div>
+                    </div>
+                </div>
+            </div>
+            <div slot="footer" class="dialog-footer">
+              <el-button size="small" @click="checkidall">全 选</el-button>
+              <el-button size="small" @click="checkidclear">清 空</el-button>
+              <el-button size="small" @click="dialogFormVisible = false">取 消</el-button>
+              <el-button size="small" type="primary" @click="checkidarr">确 定</el-button>
+            </div>
+        </el-dialog>
+        <div class="paymentstatement-haed">
+            <el-date-picker style="width:350px" v-model="value2" type="daterange" align="left"
+                unlink-panels range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
+                :picker-options="pickerOptions">
+            </el-date-picker>
+            <el-button @click="dialogFormVisible = true" type="primary">更改筛选器</el-button>
+        </div>
     </div>
 </template>
 <script>
 export default {
-    
+    data () {
+        return {
+            token:'',
+            dialogFormVisible:true,
+            pickerOptions: {
+                shortcuts: [{
+                    text: '最近一周',
+                    onClick(picker) {
+                    const end = new Date();
+                    const start = new Date();
+                    start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+                    picker.$emit('pick', [start, end]);
+                    }
+                }, {
+                    text: '最近一个月',
+                    onClick(picker) {
+                    const end = new Date();
+                    const start = new Date();
+                    start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+                    picker.$emit('pick', [start, end]);
+                    }
+                }, {
+                    text: '最近三个月',
+                    onClick(picker) {
+                        const end = new Date();
+                        const start = new Date();
+                        start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+                        picker.$emit('pick', [start, end]);
+                    }
+                }]
+            },
+            value2:'',
+            DailypaymentTypelist:[],
+            typeIds:[]
+        }
+    },
+    methods:{
+        //日付类型
+        DailypaymentTypeInit(){
+            var url = "/api/Statistics/DailypaymentTypeInit"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + that.token
+                },
+                data: { 
+                    portType: 1 ,
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.DailypaymentTypelist=res.data.data
+                } else {
+                    that.$message.error(res.data.msg);
+                }
+            }).catch(function (error) {
+                that.$message.error("接口错误,请联系信息部!");
+            });
+        },
+        //获取勾选id
+        checkidarr(){
+            this.typeIds=[];
+            for(let i=0;i<this.DailypaymentTypelist.length;i++){
+                for(let j=0;j<this.DailypaymentTypelist[i].subData.length;j++){
+                    if(this.DailypaymentTypelist[i].subData[j].isChecked==true){
+                        this.typeIds.push(this.DailypaymentTypelist[i].subData[j].id);
+                    }
+                }
+            }
+            this.DailypaymentTypeDataSave(this.typeIds)
+        },
+        //all in
+        checkidall(){
+            for(let i=0;i<this.DailypaymentTypelist.length;i++){
+                for(let j=0;j<this.DailypaymentTypelist[i].subData.length;j++){
+                    this.DailypaymentTypelist[i].subData[j].isChecked=true;
+                }
+            }
+        },
+        //清空
+        checkidclear(){
+            for(let i=0;i<this.DailypaymentTypelist.length;i++){
+                for(let j=0;j<this.DailypaymentTypelist[i].subData.length;j++){
+                    this.DailypaymentTypelist[i].subData[j].isChecked=false;
+                }
+            }
+        },
+        //保存筛选条件
+        DailypaymentTypeDataSave(val){
+            var url = "/api/Statistics/DailypaymentTypeDataSave"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + that.token
+                },
+                data: { 
+                    portType: 1 ,
+                    typeIds:val
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.dialogFormVisible=false;
+                    that.$message({
+                        message: res.data.msg,
+                        type: 'success'
+                    });
+                } else {
+                    that.$message.error(res.data.msg);
+                }
+            }).catch(function (error) {
+                that.$message.error("接口错误,请联系信息部!");
+            });
+        },
+    },
+    mounted(){
+        this.DailypaymentTypeInit();
+    }
 }
 </script>
 <style>
@@ -17,4 +160,28 @@ export default {
     height: 100%;
     min-height: 830px;
 }
+.paymentstatement-haed{
+    display: flex;
+    justify-content: space-between;
+    margin-bottom: 20px;
+    
+}
+.paymentstatement-dialog-type{
+    display: flex;
+    flex-wrap:wrap ;
+}
+.paymentstatement-dialog-type .el-checkbox{
+    width: 290px;
+}
+.paymentstatement-dialog-li .modulename{
+    font-size: 15px;
+    font-weight: 600;
+}
+.paymentstatement-all .el-dialog__body{
+    padding-top: 10px;
+}
+.paymentstatement-dialog-li .el-checkbox{
+    margin-top: 4px;
+    margin-bottom: 4px;
+}
 </style>