<template>
  <div class="domesticCommissionRule">
    <div class="commonContent">
      <div>
        <div style="display: flex;justify-content: space-between;align-items: center;">
          <p class="sfd_tit clearfix"><span>手配费单据配置</span></p>
          <div style="text-align: right;">
            <input type="button" class="normalBtn" value="新增手配费单据配置" @click="addNew(1)">
          </div>
        </div>
        <table v-loading="loading" class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
          <thead>
            <tr>
              <th>{{$t('hotel.hotel_nameOf')}}</th>
              <th>公司</th>
              <th width="400px">付款对象</th>
              <th>类型</th>
              <th>{{$t('fnc.jine')}}</th>
              <th>{{$t('fnc.feiyongleixing')}}</th>
              <th>总部制单流程</th>
              <th>分公司制单流程</th>
              <th>币种</th>
              <th>操作人</th>
              <th v-if="S_CheckAllOrder">{{$t('hotel.table_operat')}}</th>
            </tr>
          </thead>
          <template v-for="(subItem,subIndex) in DataList">
            <tr v-for="(childItem,childIndex) in subItem.DetailList">
              <td v-if="childIndex==0" :rowspan="subItem.DetailList.length">{{subItem.Name}}</td>
              <td v-if="childIndex==0" :rowspan="subItem.DetailList.length">
                {{subItem.BranchName}}
              </td>
              <td v-if="childIndex==0" :rowspan="subItem.DetailList.length">
                {{subItem.ClientName}}
                <el-popover v-if="subItem.HistoryClientList.length>0" style="width: 500px;overflow: hidden;"
                  trigger="click" popper-class="pro_tripDetails">
                  <div v-if="Details.length>0" style="display: flex;flex-wrap: wrap;">
                    <el-tag v-for="(ds, din) in Details" :key="din" size="small">{{ds.ClientName}}</el-tag>
                  </div>
                  <span slot="reference" @click="getDetails(subIndex,1)"
                    style="color: #409EFF;cursor: pointer;">历史付款对象</span>
                </el-popover>
              </td>
              <td><span v-if="childItem.Type==1">房</span>
                <span v-if="childItem.Type==2">餐</span>
                <span v-if="childItem.Type==3">车</span>
                <span v-if="childItem.Type==4">门票</span>
                <span v-if="childItem.Type==5">房费送客手数料</span>
                <span v-if="childItem.Type==6">餐费送客手数料</span>
                <span v-if="childItem.Type==7">门票送客手数料</span>
              </td>
              <td>{{childItem.Unit_Price}}</td>
              <td>{{childItem.CostTypeName}}</td>
              <td>{{childItem.FlowZName}}</td>
              <td>{{childItem.FlowFName}}</td>
              <td>{{subItem.CurrencyName}}</td>
              <td>
                <p>{{subItem.UpdateByName}}</p>
                <p>{{subItem.UpdateDate}}</p>
              </td>
              <td v-if="S_CheckAllOrder&&childIndex==0" :rowspan="subItem.DetailList.length">
                <el-button-group size='mini'>
                  <el-tooltip class="item" effect="dark" content="编辑手配费" placement="top-start">
                    <el-button type="primary" icon="el-icon-edit"
                      @click="isShowDIv = true,divTitle='编辑手配费',getEdit(subItem,1)">
                    </el-button>
                  </el-tooltip>
                  <el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
                    <el-button type="danger" icon="el-icon-delete" @click="DeleteRules(subItem.Id,1)">
                    </el-button>
                  </el-tooltip>
                </el-button-group>
              </td>
            </tr>
          </template>
          <tr v-if="DataList.length==0">
            <td colspan="11" align="center">{{$t('system.content_noData')}}</td>
          </tr>


        </table>
      </div>
      <div style="margin-top: 20px;">
        <div style="display: flex;justify-content: space-between;align-items: center;">
          <p class="sfd_tit clearfix"><span>单项签证单据配置</span></p>
          <div style="text-align: right;">
            <input type="button" class="normalBtn" value="新增单项签证单据配置" @click="addNew()">
          </div>
        </div>
        <table v-loading="loadingVisa" class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
          <thead>
            <tr>
              <th>类型</th>
              <th>{{$t('fnc.feiyongleixing')}}</th>
              <th>是否启用月结</th>
              <th>是否启用预付冲抵</th>
              <th>总公司流程</th>
              <th>分公司流程</th>
              <th>月结总公司流程</th>
              <th>月结分公司流程</th>
              <th>冲抵总公司流程</th>
              <th>冲抵分公司流程</th>
              <th>操作人</th>
              <th>{{$t('system.table_operation')}}</th>
            </tr>
          </thead>
          <template v-for="(subItem,subIndex) in visaDataList">
            <tr>
              <td>{{subItem.SetUpTypeStr}}</td>
              <td>
                {{subItem.ExpenseAccountStr}}
              </td>
              <td>
                <span style="color: red;" v-if="subItem.IsMonthly">启用</span>
              </td>
              <td>
                <span style="color: red;" v-if="subItem.IsAdvanceMatch">启用</span>
              </td>
              <td>
                {{subItem.CompanyCourseStr}}
              </td>
              <td>
                {{subItem.BranchCourseStr}}
              </td>
              <td>
                {{subItem.MonthlyCourseStr}}
              </td>
              <td>
                {{subItem.BranchMonthlyCourseStr}}
              </td>
              <td>
                {{subItem.AdvanceCourseStr}}
              </td>
              <td>
                {{subItem.BranchAdvanceCourseStr}}
              </td>
              <td>
                <p>{{subItem.CreateByStr}}</p>
                <p>{{subItem.CreateDate}}</p>
              </td>
              <td v-if="S_CheckAllOrder">
                <el-button-group size='mini'>
                  <el-tooltip class="item" effect="dark" content="编辑单项签证单据配置" placement="top-start">
                    <el-button type="primary" icon="el-icon-edit"
                      @click="isShowDIv = true,divTitle='编辑单项签证单据配置',getEdit(subItem)">
                    </el-button>
                  </el-tooltip>
                  <el-tooltip class="item" effect="dark" :content="$t('system.table_delete')" placement="top-start">
                    <el-button type="danger" icon="el-icon-delete" @click="DeleteRules(subItem.Id)">
                    </el-button>
                  </el-tooltip>
                </el-button-group>
              </td>
            </tr>
          </template>
          <tr v-if="visaDataList.length==0">
            <td colspan="11" align="center">{{$t('system.content_noData')}}</td>
          </tr>


        </table>
      </div>
    </div>

    <el-dialog :title="divTitle" :visible.sync="showVisible" width="970px" @close="close">
      <el-form ref="addMsg" :model="addMsg" :rules="rules" label-width="90px">
        <template v-if="divTitle.indexOf('手配费')!=-1">
          <el-row>
            <el-col :span="8">
              <el-form-item :label="$t('system.query_airName')" prop="Name">
                <el-input type="text" v-model="addMsg.Name"></el-input>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item :label="$t('fnc.fkduixiang')" prop="ClientID">
                <el-select filterable v-model="addMsg.ClientID" placeholder="选择付款对象" style="width: 100%;">
                  <el-option v-for="item in ClientAccountList" :label="item.AccountAlias" :value="item.ID"
                    :key='item.ID'>
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="历史对象" prop="ClientIdList">
                <el-select filterable v-model="addMsg.ClientIdList" multiple collapse-tags placeholder="历史对象"
                  style="width: 100%;">
                  <el-option v-for="(item,index) in ClientAccountList" :key="item.ID" :label="item.AccountAlias"
                    :value="item.ID">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="适配公司" prop="BranchId">
                <el-select v-model="addMsg.BranchId" placeholder="选择适配公司" style="width: 100%;">
                  <el-option v-for="item in companyList" :label='item.BName' :value='item.Id' :key='item.Id'>
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="币种" prop="CurrencyId">
                <el-select placeholder="选择币种" v-model="addMsg.CurrencyId" style="width: 100%;"
                  @change="getCurrent(addMsg.CurrencyId)">
                  <el-option v-for="item in allCurrencyList" :key="item.ID" :label="item.Name" :value="item.ID">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
          </el-row>
          <el-form-item style="margin-left: -90px;">
            <div style="width: 100%;border-bottom: 1px solid #e2e2e2;padding-bottom: 10px;margin-top: 10px;"
              v-for="(x,y) in addMsg.DetailList" :key='y'>
              <div style="display: flex;align-items: center;margin-bottom: 10px;">
                <el-form-item :label="$t('system.query_type')">
                  <el-select style="width: 80px;" v-model="x.Type" @change="gettdName(x.Id,y,1)" clearable disabled>
                    <el-option v-for="item in TypeListArr" :key="item.Id" :label="item.Name" :disabled="item.disabled"
                      :value="item.Id"></el-option>
                  </el-select>
                </el-form-item>
                <el-form-item :prop="'DetailList.'+ y +'.Unit_Price'" :rules="productGroup.Unit_Price" :label="$t('fnc.jine')">
                  <el-input style="width: 100px;" type="Number" v-model="x.Unit_Price"
                    @keyup.native="checkPrice(x,'Unit_Price',true)">
                  </el-input>
                </el-form-item>
                <el-form-item :prop="'DetailList.'+ y +'.CostTypeId'" :rules="productGroup.CostTypeId" :label="$t('fnc.feiyongleixing')">
                  <el-select filterable v-model="x.CostTypeId" style="width: 100px;" @change="gettdName(x.Id,y,2)"
                    clearable>
                    <el-option v-for="item in costType" :key="item.ID" :label="item.Name" :value="item.ID"></el-option>
                  </el-select>
                </el-form-item>
                <el-form-item :prop="'DetailList.'+ y +'.FlowZId'" :rules="productGroup.FlowZId" label="总部流程">
                  <el-select filterable v-model="x.FlowZId" style="width: 100px;" @change="gettdName(x.Id,y,3)"
                    clearable>
                    <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                    </el-option>
                  </el-select>
                </el-form-item>
                <el-form-item :prop="'DetailList.'+ y +'.FlowFId'" :rules="productGroup.FlowFId" label="分部流程">
                  <el-select filterable v-model="x.FlowFId" style="width: 100px;" @change="gettdName(x.Id,y,4)"
                    clearable>
                    <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                    </el-option>
                  </el-select>
                </el-form-item>

                <div>
                  <!-- <el-button style="margin-left: 15px;padding: 6px;" type="danger" size="mini"  class="el-icon-delete" circle
                  v-if="addMsg.DetailList.length>1" @click="addMsg.DetailList.splice(y,1)">
                </el-button> -->
                </div>

              </div>

            </div>
            <!-- <el-button  size="mini" type="primary"
              class="el-icon-circle-plus-outline" circle @click="addDetailList"></el-button> -->
          </el-form-item>
        </template>
        <template v-if="divTitle.indexOf('配置')!=-1">
          <el-row style="height: 100px;">
            <el-col :span="8">
              <el-form-item :label="$t('system.query_type')" prop="SetUpType">
                <el-select filterable v-model="addMsg.SetUpType" placeholder="选择类型" style="width: 100%;" clearable>
                  <el-option v-for="item in SetUpTypeList" :key="item.ID" :label="item.Name" :value="item.Id">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item :label="$t('fnc.feiyongleixing')" prop="ExpenseAccount">

                <el-select filterable v-model="addMsg.ExpenseAccount" placeholder="选择费用类型" style="width: 100%;">
                  <el-option v-for="(item,index) in costType" :key="index" :label="item.Name" :value='item.ID'>
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="总司流程" prop="CompanyCourse">
                <el-select filterable v-model="addMsg.CompanyCourse" placeholder="选择总公司流程" style="width: 100%;">
                  <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="分司流程" prop="BranchCourse">
                <el-select filterable v-model="addMsg.BranchCourse" placeholder="选择分公司流程" style="width: 100%;">
                  <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                  </el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <template v-if="addMsg.IsMonthly==1">
              <el-col :span="8">
                <el-form-item label="月总流程" prop="MonthlyCourse">
                  <el-select filterable v-model="addMsg.MonthlyCourse" placeholder="选择月结总公司流程" style="width: 100%;">
                    <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="8">
                <el-form-item label="月分流程" prop="BranchMonthlyCourse">
                  <el-select filterable v-model="addMsg.BranchMonthlyCourse" placeholder="选择月结分公司流程"
                    style="width: 100%;">
                    <el-option v-for="item in TemplateGetList" :label='item.Name' :value='item.Id' :key='item.Id'>
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </template>
            <el-col v-if="addMsg.IsMonthly==1" :span="16">
              <el-form-item label="" prop="">
                &nbsp;
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="启用月结" prop="">
                <el-switch v-model="addMsg.IsMonthly" active-value="1" inactive-value="0">
                </el-switch>
              </el-form-item>
            </el-col>

            <template v-if="addMsg.IsAdvanceMatch==1">
              <el-col :span="8">
                <el-form-item label="冲抵流程" prop="AdvanceCourse">
                  <el-select filterable v-model="addMsg.AdvanceCourse" placeholder="选择预付冲抵总公司流程" style="width: 100%;">
                    <el-option v-for="item in TemplateGetList" :key="item.Id" :label="item.Name" :value="item.Id">
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="8">
                <el-form-item label="冲抵分流程" prop="BranchAdvanceCourse">
                  <el-select filterable v-model="addMsg.BranchAdvanceCourse" placeholder="选择预付冲抵分公司流程"
                    style="width: 100%;">
                    <el-option v-for="item in TemplateGetList" :label='item.Name' :value='item.Id' :key='item.Id'>
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </template>
            <el-col v-if="addMsg.IsAdvanceMatch==1" :span="16">
              <el-form-item label="" prop="">
                &nbsp;
              </el-form-item>
            </el-col>
            <el-col :span="8">
              <el-form-item label="启用预付冲抵" prop="">
                <el-switch v-model="addMsg.IsAdvanceMatch" active-value="1" inactive-value="0">
                </el-switch>
              </el-form-item>
            </el-col>
          </el-row>
        </template>
      </el-form>
      <span slot="footer" class="dialog-footer">
        <el-button size="small" @click="showVisible = false">{{$t('pub.cancelBtn')}}</el-button>
        <el-button size="small" type="danger" @click="submit('addMsg')" :loading="submitLoading">确 定</el-button>
      </span>
    </el-dialog>



  </div>
</template>
<script>
  import Vue from "vue";
  const addobj = {
    Id: 0,
    Name: '',
    ClientID: null,
    ClientIdList: [],
    ClientIds: '',
    DetailList: [{
      Type: 1,
      Unit_Price: null,
      CostTypeId: null,
      FlowZId: null,
      FlowFId: null
    }],

    // 单项签证单据配置
    SetUpType: null,
    ExpenseAccount: null,
    CompanyCourse: null,
    BranchCourse: null,
    IsMonthly: null,
    MonthlyCourse: null,
    BranchMonthlyCourse: null,
  }
  export default {
    data() {
      return {
        submitLoading: false,
        loadingVisa: false,
        divTitle: '',
        visaDataList: [],
        costType: [],
        TemplateGetList: [],
        Details: [],
        S_CheckAllOrder: false,
        CurrentNmae: '',
        //所有币种
        allCurrencyList: [],
        companyList: [],
        getCompanyMsg: {
          RB_Group_Id: '0',
          Status: '0',
        },
        msg: {
          BranchId: -1,
        },
        loading: false, //加载层
        DataList: [],
        total: 0,
        SetUpTypeList: [],
        TypeListArr: [{
            Name: '房',
            Id: 1,
            disabled: false
          },
          {
            Name: '餐',
            Id: 2,
            disabled: false
          },
          {
            Name: '车',
            Id: 3,
            disabled: false
          },
          {
            Name: '门票',
            Id: 4,
            disabled: false
          },
          {
            Name: '房费送客手数料',
            Id: 5,
            disabled: false
          },
          {
            Name: '餐费送客手数料',
            Id: 6,
            disabled: false
          },
          {
            Name: '门票送客手数料',
            Id: 7,
            disabled: false
          },
        ], //类型
        ClientAccountList: [], //付款对象
        showVisible: false, //弹窗的显示
        addMsg: Object.assign({}, addobj),
        rules: {
          Name: [{
            required: true,
            message: '请输入名称',
            trigger: 'blur'
          }],
          ClientID: [{
            required: true,
            message: '请选择付款对象',
            trigger: 'change'
          }],
          BranchId: [{
            required: true,
            message: '请选择适配公司',
            trigger: 'change'
          }],
          CurrencyId: [{
            required: true,
            message: '请选择币种',
            trigger: 'change'
          }],
          ClientIdList: [{
            required: true,
            message: '请选择历史付款对象',
            trigger: 'change'
          }],
          SetUpType: [{
            required: true,
            message: '请选择类型',
            trigger: 'change'
          }],
          ExpenseAccount: [{
            required: true,
            message: '请选择费用类型',
            trigger: 'change'
          }],
          CompanyCourse: [{
            required: true,
            message: '请选择总公司流程',
            trigger: 'change'
          }],
          BranchCourse: [{
            required: true,
            message: '请选择分公司流程',
            trigger: 'change'
          }],
          MonthlyCourse: [{
            required: true,
            message: '请选择月结总公司流程',
            trigger: 'change'
          }],
          BranchMonthlyCourse: [{
            required: true,
            message: '请选择月结分公司流程',
            trigger: 'change'
          }],
        },
        productGroupRules2: {
          Id: [{
            required: true,
            // message: '请选择人员',
            trigger: 'change'
          }],
        },
        productGroup: {
          Type: [{
            required: true,
            message: '请选择类型',
            trigger: 'change'
          }],
          Unit_Price: [{
            required: true,
            message: '金额不能为空',
            trigger: 'blur'
          }],
          CostTypeId: [{
            required: true,
            message: '请选择费用类型',
            trigger: 'change'
          }],
          FlowZId: [{
            required: true,
            message: '请选择总公司流程',
            trigger: 'change'
          }],
          FlowFId: [{
            required: true,
            message: '请选择分公司流程',
            trigger: 'change'
          }],
        },
        StencilFlowList: [], //签证制单流程
        CostTypeList: [], //签证费用类型
      };
    },
    created() {
      let userInfo = this.getLocalStorage();
      this.getCompanyMsg.RB_Group_Id = userInfo.RB_Group_id; //集团
      this.GetVisaSetUpList()
      this.getList()
      this.getFKList()
      this.getCompany()
      this.getAllCurrency()
      this.FinancialFlowTemplate_post_GetList()
      this.getTemplateCostTypeList()
    },
    methods: {
      close() {
        // 小技巧,直接给表单数据对象赋值为空
        this.addMsg = {}
        // 清空表单校验
        this.$refs.addMsg.clearValidate();
        // 移除校验结果并重置字段值
        this.$refs["addMsg"].resetFields();
      },
      // 获取所有费用类型
      getTemplateCostTypeList() {
        // 单项签证制单费用类型
        // this.apipost('Financial_post_GetTemplateCostTypeList',{},res=>{
        //   if(res.data.resultCode==1){
        //       this.CostTypeList=res.data.data;
        //   }else{}
        // },err=>{})
        // 手配费费用类型
        this.apipost('financeinfo_post_GetCostTypeList', {
          Type: null
        }, res => {
          if (res.data.resultCode == 1) {
            this.costType = res.data.data;
          } else {}
        }, err => {})
        // 单项签证制单类型
        this.apipost('Financial_post_GetSetUpTypeEnumList', {}, res => {
          if (res.data.resultCode == 1) {
            this.SetUpTypeList = res.data.data;
          } else {}
        }, err => {})
      },
      // 所有审核流程
      FinancialFlowTemplate_post_GetList() {
        // 手配费流程
        this.apipost(
          "FinancialFlowTemplate_post_GetSingleList", {},
          res => {
            if (res.data.resultCode == 1) {
              this.TemplateGetList = res.data.data;
            } else {}
          },
          err => {}
        );
        // 单项签证制单流程
        // this.apipost(
        //     "FinancialFlowTemplate_post_GetList",//Financial_post_GetList
        //     {Status:1,Type:2,TemplateSorce:1},
        //     res => {
        //       if (res.data.resultCode == 1) {
        //         this.StencilFlowList = res.data.data;
        //     } else {
        //     }
        //   },
        //   err => {}
        // );
      },
      //获取历史详情
      getDetails(index, type) {
        this.Details = type == 1 ? this.DataList[index].HistoryClientList : this.DataList[index].DetailList;
      },
      //获取当前下拉选中币种
      getCurrent(currencyId) {
        this.allCurrencyList.forEach(x => {
          if (x.ID == currencyId) {
            this.CurrentNmae = x.Name;
          }
        });
      },
      //获取所有币种
      getAllCurrency() {
        this.apipost(
          "financeinfo_post_GetList", {},
          res => {
            if (res.data.resultCode == 1) {
              this.allCurrencyList = res.data.data;
            }
          },
          err => {}
        );
      },
      //获取公司
      getCompany() {
        this.apipost('admin_get_BranchGetList', this.getCompanyMsg, res => {
          if (res.data.resultCode == 1) {
            this.companyList = res.data.data;
          } else {}
        }, err => {})
      },
      handleCurrentChange(val) {
        //翻页功能按钮
        this.msg.pageIndex = val;
        this.getList();
      },
      getList() {
        this.loading = true;
        this.apipost(
          "handfee_post_GetHandFeeList",
          this.msg,
          res => {
            this.loading = false;
            if (res.data.resultCode == 1) {
              this.DataList = res.data.data;
              // this.total = res.data.data.count;
            }
          },
          err => {}
        );


      },
      GetVisaSetUpList() {
        this.loadingVisa = true
        this.apipost(
          "Financial_post_GetVisaSetUpList", {},
          res => {
            this.loadingVisa = false;
            if (res.data.resultCode == 1) {
              this.visaDataList = res.data.data;
            }
          },
          err => {}
        );
      },
      gettdName(id, index, type) { //获取团队类型名称
        if (type == 1) {
          this.TypeListArr.map(x => {
            if (x.Id == id) {
              this.addMsg.DetailList[index].Name = x.Name;
              return false
            }
          })
        }
      },
      //获取付款列表
      getFKList() {
        let msg = {
          ID: 0,
          Type: 0,
          ObjID: 0,
          CardNum: ''
        }
        this.apipost(
          "financeinfo_post_GetClientAccountList", msg,
          res => {
            if (res.data.resultCode == 1) {
              this.ClientAccountList = res.data.data;
            }
          }
        );
      },
      getEdit(row, type) { //修改
        let data = JSON.parse(JSON.stringify(row))
        this.addMsg = data
        if (type == 1) {
          this.addMsg.DetailList.forEach(item => {
            item.Unit_Price = Number(item.Unit_Price)
          })
          this.addMsg.ClientIdList = data.ClientIds.split(',').map(Number)
        }
        this.addMsg = Object.assign({}, this.addMsg)
        if (!type) {
          this.addMsg.SetUpType = String(row.SetUpType)
          this.addMsg.IsMonthly = String(row.IsMonthly)
          this.addMsg.MonthlyCourse = row.MonthlyCourse ? row.MonthlyCourse : null
          this.addMsg.BranchMonthlyCourse = row.BranchMonthlyCourse ? row.BranchMonthlyCourse : null
        }
        this.showVisible = true;
      },
      DeleteRules(ID, type) { //删除
        let text
        let cmd
        if (type == 1) {
          text = '是否删除手配费单据配置'
          cmd = 'handfee_post_DelHandFee'
        } else {
          text = '是否删除单项签证单据配置'
          cmd = 'Financial_post_DelVisaSetUp'
        }
        this.$confirm(text, this.$t('tips.tips'), {
            confirmButtonText: this.$t('pub.sureBtn'),
            cancelButtonText: this.$t('pub.cancelBtn'),
            type: "warning"
          })
          .then(() => {
            this.apipost(cmd, {
              Id: ID
            }, res => {
              if (res.data.resultCode == 1) {
                this.Success(res.data.message)
                if (type == 1) {
                  this.getList()
                } else {
                  this.GetVisaSetUpList()
                }
              } else {
                this.Error(res.data.message)
              }
            })
          })
          .catch(() => {});
      },
      addNew(type) { //新增
        this.addMsg = {
          Id: 0,
          Name: '',
          ClientID: null,
          ClientIdList: [],
          ClientIds: '',
          DetailList: [{
            Type: 1,
            Unit_Price: null,
            CostTypeId: null,
            FlowZId: null,
            FlowFId: null
          }],

          // 单项签证单据配置
          SetUpType: null,
          ExpenseAccount: null,
          CompanyCourse: null,
          BranchCourse: null,
          IsMonthly: null,
          MonthlyCourse: null,
          BranchMonthlyCourse: null,
        }
        this.divTitle = type == 1 ? '新增手配费' : '新增单项签证单据配置'
        this.showVisible = true;
        this.addDetailList()
      },
      addDetailList() { //新增类型
        // let isdisabled = false
        // let isdisabledXHS = false
        for (let i = 2; i < 8; i++) {
          let obj = {
            Type: i,
            Unit_Price: null,
            CostTypeId: null,
            FlowZId: null,
            FlowFId: null
          }
          this.addMsg.DetailList.push(obj)
        }
      },
      submit(formName) {
        if (this.divTitle.indexOf('手配费') != -1) {
          this.addMsg.ClientIds = this.addMsg.ClientIdList.join(',')
        }
        this.$refs[formName].validate((valid) => {
          if (valid) {
            if (this.divTitle.indexOf('手配费') != -1) {
              let addMsg = {
                Id: this.addMsg.Id,
                Name: this.addMsg.Name,
                ClientID: this.addMsg.ClientID,
                ClientIdList: this.addMsg.ClientIdList,
                ClientIds: this.addMsg.ClientIds,
                DetailList: this.addMsg.DetailList,
                BranchId: this.addMsg.BranchId,
                CurrencyId: this.addMsg.CurrencyId,
              }
              this.submitLoading = true
              this.apipost(
                'handfee_post_SetHandFeeInfo', addMsg,
                res => {
                  this.submitLoading = false
                  if (res.data.resultCode == 1) {
                    this.getList();
                    this.showVisible = false;
                    this.Success(res.data.message)

                  } else {
                    this.Error(res.data.message)
                  }
                },
                err => {}
              )
            } else {
              let addMsg = {
                Id: this.addMsg.Id,
                SetUpType: this.addMsg.SetUpType,
                ExpenseAccount: this.addMsg.ExpenseAccount,
                CompanyCourse: this.addMsg.CompanyCourse,
                BranchCourse: this.addMsg.BranchCourse,
                IsMonthly: this.addMsg.IsMonthly,
                MonthlyCourse: this.addMsg.MonthlyCourse,
                BranchMonthlyCourse: this.addMsg.BranchMonthlyCourse,
                IsAdvanceMatch: this.addMsg.IsAdvanceMatch,
                AdvanceCourse: this.addMsg.AdvanceCourse,
                BranchAdvanceCourse: this.addMsg.BranchAdvanceCourse,
              }
              this.submitLoading = true
              this.apipost(
                'Financial_post_SetVisaSetUp', addMsg,
                res => {
                  this.submitLoading = false
                  if (res.data.resultCode == 1) {
                    this.GetVisaSetUpList();
                    this.showVisible = false;
                    this.Success(res.data.message)

                  } else {
                    this.Error(res.data.message)
                  }
                },
                err => {}
              )
            }

          }
        });
      },

    },
    mounted() {
      let userInfo = this.getLocalStorage();
      let ActionMenuCode = userInfo.ActionMenuCode;
      if (ActionMenuCode.indexOf('S_CheckAllOrder') != -1) {
        this.S_CheckAllOrder = true
      }
      if (!this.S_CheckAllOrder) {
        this.msg.BranchId = userInfo.RB_Group_id
      }
    }
  };

</script>
<style scoped>
  @import "../../../assets/css/cssReset.css";

  /* .rule-box .el-select__tags{
      top: 100%;
    } */
  .domesticCommissionRule .query-box input {
    height: 34px !important;
  }

  .p-5 {
    padding: 5px 0;
  }

  /deep/.el-tag--small {
    margin: 0 2px 2px;
    padding: 0 3px;
  }

  .sfd_tit {
    border-left: 3px solid #E95252;
    text-indent: 10px;
    font-size: 16px;
    line-height: 30px;
    margin: 20px 0 10px 0;
  }

</style>