11
WXL
2023-10-16 29b4ba2b27bd486b6beccb6f03678d8eb8d7b862
src/views/project/fundcheck/expertFeeCheck/index.vue
@@ -1,135 +1,354 @@
<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="80px">
    <el-form
      :model="queryParams"
      ref="queryForm"
      :inline="true"
      v-show="showSearch"
      label-width="80px"
    >
      <el-row>
        <el-col :span="8">
          <el-form-item label="申请日期" prop="createTime">
            <el-date-picker format="yyyy-MM-dd" @change="selectapplication" value-format="yyyy-MM-dd" v-model="createTime"
              type="daterange" range-separator="至" start-placeholder="申请开始日期" end-placeholder="申请结束日期"
              @keyup.enter.native="handleQuery">
            <el-date-picker
              format="yyyy-MM-dd"
              @change="selectapplication"
              value-format="yyyy-MM-dd"
              v-model="createTime"
              type="daterange"
              range-separator="至"
              start-placeholder="申请开始日期"
              end-placeholder="申请结束日期"
              @keyup.enter.native="flowconclusion"
            >
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <el-form-item label="经办人" prop="APPLICANT" style="float: left">
            <el-input v-model="queryParams.APPLICANT" placeholder="请输入申请人姓名" clearable size="small"
              @keyup.enter.native="handleQuery" />
          <el-form-item label="金额" prop="money" style="float: left">
            <el-input
              v-model="queryParams.money"
              placeholder="请输入申请人金额"
              clearable
              size="small"
              @keyup.enter.native="flowconclusion"
            />
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <el-form-item label="审批状态" prop="CHECKFLAG" style="float: left">
            <el-select v-model="queryParams.CHECKFLAG" placeholder="请选择" style="width: 100%">
              <el-option v-for="item in checkFlagOptions" :key="item.value" :label="item.label" :value="item.value">
          <el-form-item label="经办人" prop="APPLICANT" style="float: left">
            <el-input
              v-model="queryParams.APPLICANT"
              placeholder="请输入申请人姓名"
              clearable
              size="small"
              @keyup.enter.native="flowconclusion"
            />
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <el-form-item  label="审批状态" prop="CHECKFLAG" style="float: left">
            <el-select
              v-model="queryParams.CHECKFLAG"
              placeholder="请选择"
              style="width: 100%"
            >
              <el-option
                v-for="item in checkFlagOptions"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="6">
        <!-- <el-col :span="6">
          <el-button type="primary" icon="el-icon-search" size="mini" @click="flowconclusion">搜索</el-button>
          <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
        </el-col> -->
      </el-row>
      <el-row>
        <el-col :span="5">
          <el-form-item label-width="120px" label="申请材料状态" prop="checkstatus" style="float: left">
            <el-select
              v-model="queryParams.checkstatus"
              placeholder="请选择"
              style="width: 100%"
            >
              <el-option
                v-for="item in checkmaterials"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <el-form-item label="捐献者" prop="donorname" style="float: left">
            <el-input
              v-model="queryParams.donorname"
              placeholder="请输入申请人捐献者"
              clearable
              size="small"
              @keyup.enter.native="flowconclusion"
            />
          </el-form-item>
        </el-col>
        <el-col :span="3">
          <div style="margin-bottom: 15px;">
            <el-button
              type="primary"
              icon="el-icon-search"
              size="mini"
              @click="flowconclusion"
              >搜索</el-button
            >
            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
              >重置</el-button
            >
          </div>
        </el-col>
      </el-row>
    </el-form>
    <el-form ref="infoform" label-width="100px">
      <el-row>
        <el-table v-loading="loading" border :data="donateconsolationfundList" @selection-change="handleSelectionChange">
        <el-table
          v-loading="loading"
          border
          :data="donateconsolationfundList"
          @selection-change="handleSelectionChange"
        >
          <!--
          <el-table-column label="审批状态" width="120" align="center" prop="checkFlag">
            <template slot-scope="scope">
              <span v-if="scope.row.checkFlag == 0"><i class="el-icon-check"
                  style="color: #5fb878; font-weight: bold"></i></span>
              <!-- <span v-else>待审核</span> -->
              <span v-else>待审核</span>
            </template>
          </el-table-column>
          <el-table-column label="申请日期" width="120" align="center" prop="createTime">
          -->
          <el-table-column
            label="申请日期"
            width="120"
            align="center"
            prop="createTime"
          >
            <template slot-scope="scope">
              <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
            </template>
          </el-table-column>
          <el-table-column label="经办人" align="center" prop="username" width="120px" />
          <el-table-column label="所属组别" align="center" prop="deptmentname" width="160px" />
          <el-table-column label="组长" align="center" prop="managername" width="120px" />
          <el-table-column
            label="经办人"
            align="center"
            prop="username"
            width="150px"
          />
          <el-table-column
            label="申请金额"
            align="center"
            prop="pretaxcost"
            width="200px"
          />
          <el-table-column
            label="所属组别"
            align="center"
            prop="deptmentname"
            width="200px"
          />
          <el-table-column
            label="组长"
            align="center"
            prop="managername"
            width="150px"
          />
          <!-- <el-table-column label="工作单位" align="center"  prop="unitname" width="230px" /> -->
          <!-- <el-table-column label="联系电话" align="center"  prop="phone"  width="160"  /> -->
          <el-table-column label="税前金额" align="center" prop="pretaxcost" width="120px" />
          <el-table-column label="税后金额" align="center" prop="taxedcost" width="120px" />
          <!-- <el-table-column label="税后金额" align="center" prop="taxedcost" width="120px" />
          <el-table-column label="申请金额" align="center" prop="amountrequested" width="120px" />
          <el-table-column label="预支费用" align="center" prop="prepaidamount" width="120px" />
          <el-table-column label="审核状态" align="center" prop="recordstatus" width="180">
          <el-table-column label="预支费用" align="center" prop="prepaidamount" width="120px" /> -->
          <el-table-column
            label="审核状态"
            align="center"
            prop="recordstatus"
            width="200"
          >
            <template slot-scope="scope">
              <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" />
              <dict-tag
                :options="dict.type.sys_recordstatus"
                :value="scope.row.recordstatus"
              />
            </template>
          </el-table-column>
          <el-table-column label="捐献者" align="center" prop="donorname" width="120px" />
          <el-table-column
            label="申请材料状态"
            width="140"
            align="center"
            prop="checkstatus"
          >
            <template slot-scope="scope">
              <dict-tag
                :options="dict.type.sys_stage_type"
                :value="scope.row.checkstatus"
              />
            </template>
          </el-table-column>
          <el-table-column
            label="捐献者"
            align="center"
            prop="donorname"
            width="120px"
          />
          <el-table-column label="备注" align="center" prop="remark" />
          <!--<el-table-column label="捐献编号" align="center" prop="donorno" />
          <el-table-column label="财务审核" align="center" prop="financechecher" width="140" />-->
          <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width" width="160px">
          <el-table-column
            label="操作"
            fixed="right"
            align="center"
            class-name="small-padding fixed-width"
            width="260px"
          >
            <template slot-scope="scope">
              <el-button size="mini" type="text" icon="el-icon-edit" v-if="scope.row.checkFlag == 0"
                @click="handleShow(scope.row)">详情</el-button>
              <el-button v-if="scope.row.checkFlag == 1" size="mini" type="text" icon="el-icon-edit"
                @click="handleUpdate(scope.row)">审核</el-button>
              <el-button
                size="mini"
                type="text"
                icon="el-icon-edit"
                v-if="scope.row.checkFlag == 0"
                @click="handleDetail(scope.row)"
                >详情</el-button
              >
              <el-button
                v-if="scope.row.checkFlag == 1"
                size="mini"
                type="text"
                icon="el-icon-edit"
                @click="handleCheck(scope.row)"
                >审核</el-button
              >
              <!-- v-hasPermi="['project:donateconsolationfund:edit']" -->
              <el-button size="mini" type="text" icon="el-icon-download" @click="dayin(scope.row.id)">下载</el-button>
              <el-button
                size="mini"
                type="text"
                icon="el-icon-download"
                @click="dayin(scope.row.id)"
                >下载</el-button
              >
            </template>
          </el-table-column>
        </el-table>
        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
          @pagination="getlistbypower" />
        <pagination
          v-show="total > 0"
          :total="total"
          :page.sync="queryParams.pageNum"
          :limit.sync="queryParams.pageSize"
          @pagination="getlistbypower"
        />
      </el-row>
    </el-form>
    <!-- 添加或修改费用申请单 -->
    <el-dialog :visible.sync="dialogOpen" width="1400px" :title="title" style="text-align: center">
    <el-dialog
      :visible.sync="dialogOpen"
      width="1400px"
      :title="title"
      style="text-align: center"
    >
      <el-form ref="form" :model="form" label-width="120px" :rules="rules">
        <!-- <el-form ref="applyForm" :model="applicationForm" label-width="120px"> -->
        <el-row>
          <el-col :span="5">
            <el-form-item label="申请日期" prop="createTime">
              <!-- <el-input v-model="form.donorno" placeholder="请输入申请日期" /> -->
              <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date"
                value-format="yyyy-MM-dd HH:mm:ss" placeholder="申请日期">
              <el-date-picker
                clearable
                style="width: 100%"
                v-model="form.createTime"
                type="date"
                value-format="yyyy-MM-dd HH:mm:ss"
                placeholder="申请日期"
              >
              </el-date-picker>
            </el-form-item>
          </el-col>
          <el-col :span="5">
            <el-form-item label="经办人" prop="username">
              <!-- <el-input v-model="form.username" placeholder="请输入申请人姓名" clearable /> -->
              <el-select v-model="form.username" placeholder="申请人姓名" clearable filterable allow-create
                style="width: 100%">
                <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname"
                  :value="dict.nickname"></el-option>
              <el-select
                v-model="form.username"
                placeholder="申请人姓名"
                clearable
                filterable
                allow-create
                style="width: 100%"
              >
                <el-option
                  v-for="dict in userlist"
                  :key="dict.index"
                  :label="dict.nickname"
                  :value="dict.nickname"
                ></el-option>
              </el-select>
            </el-form-item>
          </el-col>
          <el-col :span="5">
            <el-form-item label="所属组别" prop="deptmentname">
              <el-input disabled v-model="form.deptmentname" placeholder="请输入所属组别" clearable />
              <el-input
                disabled
                v-model="form.deptmentname"
                placeholder="请输入所属组别"
                clearable
              />
            </el-form-item>
          </el-col>
          <el-col :span="5">
            <el-form-item label="组长" prop="managername">
              <el-input disabled v-model="form.managername" placeholder="请输入组长" clearable />
              <el-input
                disabled
                v-model="form.managername"
                placeholder="请输入组长"
                clearable
              />
            </el-form-item>
          </el-col>
        </el-row>
        <el-row>
          <el-col :span="5">
            <el-form-item label="申请类型">
              <el-radio-group v-model="form.applytype" @change="LoadItemTypeArr">
              <el-radio-group
                v-model="form.applytype"
                @change="LoadItemTypeArr"
              >
                <!--<el-radio v-for="dict in dict.type.sys_financeitemtype" :key="dict.value" :label="dict.value"
                :disabled="form.id != null">{{ dict.label }}</el-radio>-->
                <el-radio v-model="form.applytype" label="1">专家费用申请</el-radio>
                <el-radio v-model="form.applytype" label="1"
                  >专家费用申请</el-radio
                >
              </el-radio-group>
            </el-form-item></el-col>
            </el-form-item></el-col
          >
          <el-col :span="10">
            <el-form-item label="申请说明" prop="remark">
              <el-input disabled v-model="form.remark" placeholder="请输入捐献者姓名" clearable />
              <el-input
                disabled
                v-model="form.remark"
                placeholder="请输入申请说明"
                clearable
              />
            </el-form-item>
          </el-col>
          <el-col :span="5">
            <el-form-item label="捐献者" prop="donorname">
              <el-input disabled v-model="form.donorname" placeholder="请输入捐献者姓名" clearable />
              <el-input
                disabled
                v-model="form.donorname"
                placeholder="请输入捐献者姓名"
                clearable
              />
            </el-form-item>
          </el-col>
          <!--
@@ -151,58 +370,103 @@
          -->
        </el-row>
        <el-row>
          <el-col :span="5">
            <el-form-item label="合计金额" prop="amountrequested">
          <!-- <el-col :span="5">
            <el-form-item label="扣税金额" prop="amountrequested">
              <el-input v-model="form.amountrequested" placeholder="申请金额" :disabled="true" />
            </el-form-item>
          </el-col>
          </el-col> -->
          <el-col :span="5">
            <el-form-item label="税前金额" prop="amountrequested">
            <el-form-item label="税前合计" prop="pretaxcost">
              <el-input v-model="form.pretaxcost" placeholder="税前金额合计" />
            </el-form-item>
          </el-col>
          <el-col :span="5">
            <el-form-item label="税后金额" prop="amountrequested">
            <el-form-item label="税后合计" prop="taxedcost">
              <el-input v-model="form.taxedcost" placeholder="税后金额合计" />
            </el-form-item>
          </el-col>
            </el-form-item> </el-col
          ><!--
          <el-col :span="5">
            <el-form-item label="申请状态" prop="recordstatus">
              <!-- <el-input v-model="form.recordstatus" placeholder="审核意见"/> -->
              <el-select v-model="form.recordstatus" placeholder="请选择审核状态" clearable size="small" :disabled="true">
                <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label"
                  :value="dict.value" />
              </el-select>
            </el-form-item>
          </el-col>
            </el-form-item>
          </el-col>-->
        </el-row>
        <el-row>
          <el-col :span="4">
            <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="addRow"
              v-if="show === 1">新增专家费</el-button>
            <el-button
              type="primary"
              plain
              icon="el-icon-plus"
              size="mini"
              @click="addRow"
              v-if="show === 1"
              >新增专家费</el-button
            >
          </el-col>
        </el-row>
        <el-row style="margin-top: 5px; margin-bottom: 5px">
          <el-table :data="fundDetailArr" :summary-method="getSummaries" border highlight-current-row v-loading="loading">
            <el-table-column prop="orderno" align="center" label="序号" width="80">
          <el-table
            :data="fundDetailArr"
            :summary-method="getSummaries"
            border
            highlight-current-row
            v-loading="loading"
          >
            <el-table-column
              prop="orderno"
              align="center"
              label="序号"
              width="80"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.orderno" placeholder="序号" />
              </template>
            </el-table-column>
            <el-table-column prop="applytype" align="center" label="费用类型" width="220">
            <el-table-column
              prop="applytype"
              align="center"
              label="费用类型"
              width="220"
            >
              <template slot-scope="scope">
                <el-select v-model="scope.row.applytype" placeholder="费用类型" @change="LoadItemTypeArr(scope.row)">
                  <el-option v-for="dict in fundtypeArr" :key="dict.index" :label="dict.label"
                    :value="dict.value"></el-option>
                <el-select
                  v-model="scope.row.applytype"
                  placeholder="费用类型"
                  @change="LoadItemTypeArr(scope.row)"
                >
                  <el-option
                    v-for="dict in fundtypeArr"
                    :key="dict.index"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
              </template>
            </el-table-column>
            <el-table-column prop="itemtype" align="center" label="服务项目" width="200">
            <el-table-column
              prop="itemtype"
              align="center"
              label="服务项目"
              width="200"
            >
              <template slot-scope="scope">
                <el-select v-model="scope.row.itemid" placeholder="服务项目" clearable filterable allow-create>
                  <el-option v-for="dict in scope.row.itemArr" :key="dict.index" :label="dict.itemName"
                    :value="dict.id"></el-option>
                <el-select
                  v-model="scope.row.itemid"
                  placeholder="服务项目"
                  clearable
                  filterable
                  allow-create
                >
                  <el-option
                    v-for="dict in scope.row.itemArr"
                    :key="dict.index"
                    :label="dict.itemName"
                    :value="dict.id"
                  ></el-option>
                  <!-- <el-option
                    v-for="dict in itemArr"
                    :key="dict.index"
@@ -212,34 +476,86 @@
                </el-select>
              </template>
            </el-table-column>
            <el-table-column v-if="show === 1" prop="servicesscopename" align="center" label="费用说明" width="150">
            <el-table-column
              v-if="show === 1"
              prop="servicesscopename"
              align="center"
              label="费用说明"
              width="150"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.servicesscopename" placeholder="费用说明" />
                <el-input
                  v-model="scope.row.servicesscopename"
                  placeholder="费用说明"
                />
              </template>
            </el-table-column>
            <el-table-column prop="beneficiaryno" align="center" label="姓名" width="120">
            <el-table-column
              prop="beneficiaryno"
              align="center"
              label="姓名"
              width="120"
            >
              <template slot-scope="scope">
                <el-select filterable allow-create ref="getReportname" default-first-option
                  @change="selectpersonmsg(scope.row)" v-model="scope.row.beneficiaryname" placeholder="请选择">
                  <el-option v-for="item in arrr3" :key="item.reportNo" :label="item.reportName" :value="item.reportName">
                <el-select
                  filterable
                  allow-create
                  ref="getReportname"
                  default-first-option
                  @change="selectpersonmsg(scope.row)"
                  v-model="scope.row.beneficiaryname"
                  placeholder="请选择"
                >
                  <el-option
                    v-for="item in arrr3"
                    :key="item.reportNo"
                    :label="item.reportName"
                    :value="item.reportName"
                  >
                  </el-option>
                </el-select>
              </template> </el-table-column><el-table-column prop="title" align="center" label="职称" width="150">
              </template> </el-table-column
            ><el-table-column
              prop="title"
              align="center"
              label="职称"
              width="150"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.title" placeholder="职称" />
              </template>
            </el-table-column>
            <el-table-column v-if="show === 1" prop="amount" align="center" label="税前金额" width="100">
            <el-table-column
              v-if="show === 1"
              prop="amount"
              align="center"
              label="税前金额"
              width="100"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.amount" v-on:input="(val) => {
                  change(scope.row);
                }
                  " placeholder="税前金额" />
                <el-input
                  v-model="scope.row.amount"
                  v-on:input="
                    val => {
                      change(scope.row);
                    }
                  "
                  placeholder="税前金额"
                />
              </template>
            </el-table-column>
            <el-table-column v-if="show === 1" prop="taxedamount" align="center" label="税后金额" width="100">
            <el-table-column
              v-if="show === 1"
              prop="taxedamount"
              align="center"
              label="税后金额"
              width="100"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.taxedamount" placeholder="税后金额" />
                <el-input
                  v-model="scope.row.taxedamount"
                  placeholder="税后金额"
                />
              </template>
            </el-table-column>
            <!--
@@ -249,35 +565,76 @@
              </template>
            </el-table-column>
-->
            <el-table-column prop="unitname" align="center" label="工作单位" width="180">
            <el-table-column
              prop="unitname"
              align="center"
              label="工作单位"
              width="180"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.unitname" placeholder="工作单位" />
              </template>
            </el-table-column>
            <el-table-column prop="idcardno" align="center" label="身份证号" width="200">
            <el-table-column
              prop="idcardno"
              align="center"
              label="身份证号"
              width="200"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.idcardno" placeholder="身份证号" />
              </template>
            </el-table-column>
            <el-table-column prop="depositbank" align="center" label="开户银行" width="240">
            <el-table-column
              prop="depositbank"
              align="center"
              label="开户银行"
              width="240"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.depositbank" placeholder="开户银行" />
                <el-input
                  v-model="scope.row.depositbank"
                  placeholder="开户银行"
                />
              </template>
            </el-table-column>
            <el-table-column prop="bankcardno" align="center" label="银行卡号" width="220">
            <el-table-column
              prop="bankcardno"
              align="center"
              label="银行卡号"
              width="220"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.bankcardno" placeholder="银行卡号" />
                <el-input
                  v-model="scope.row.bankcardno"
                  placeholder="银行卡号"
                />
              </template>
            </el-table-column>
            <el-table-column fixed="right" align="center" label="操作" width="120">
            <el-table-column
              fixed="right"
              align="center"
              label="操作"
              width="200"
            >
              <template slot-scope="scope">
                <el-button @click="saveRows(scope.row, scope.$index)" type="text" size="small" v-if="show === 1">
                <el-button
                  @click="saveRows(scope.row, scope.$index)"
                  type="text"
                  size="small"
                  v-if="show === 1"
                >
                  保存
                </el-button>
                <el-button @click.native.prevent="
                  deleteRows(scope.row, scope.$index, fundDetailArr)
                  " type="text" size="small" v-hasPermi="['project:expertFeeCheck:delete']">
                <el-button
                  @click.native.prevent="
                    deleteRows(scope.row, scope.$index, fundDetailArr)
                  "
                  type="text"
                  size="small"
                  v-hasPermi="['project:expertFeeCheck:delete']"
                >
                  删除
                </el-button>
              </template>
@@ -299,17 +656,39 @@
        </el-row>
        <el-row style="margin-top: 5px; margin-bottom: 5px">
          <el-table :data="fundflowList" border>
            <el-table-column label="审核人" align="center" prop="checkusername" />
            <el-table-column label="审核日期" align="center" prop="createTime" />
            <el-table-column label="审核结果" align="center" prop="flowconclusion"><template slot-scope="scope"><span
                  v-if="scope.row.flowconclusion == 1">通过</span><span
                  v-if="scope.row.flowconclusion == 2">不通过</span></template>
            <el-table-column
              label="审核人"
              align="center"
              prop="checkusername"
            />
            <el-table-column
              label="审核日期"
              align="center"
              prop="createTime"
            />
            <el-table-column
              label="审核结果"
              align="center"
              prop="flowconclusion"
              ><template slot-scope="scope"
                ><span v-if="scope.row.flowconclusion == 1">通过</span
                ><span v-if="scope.row.flowconclusion == 2"
                  >不通过</span
                ></template
              >
            </el-table-column>
            <el-table-column label="审核备注" align="center" prop="flowcontent" />
            <el-table-column
              label="审核备注"
              align="center"
              prop="flowcontent"
            />
          </el-table>
        </el-row>
        <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="dialogType == 'edit'">
        <el-row
          style="margin-top: 25px; margin-bottom: 5px"
          v-if="dialogType == 'edit'"
        >
          <el-col :span="7">
            <el-form-item label="审核" align="left">
              <el-radio-group v-model="newobj.flowlevelone" align="left">
@@ -320,13 +699,18 @@
          </el-col>
          <el-col :span="12">
            <el-form-item label="审核备注">
              <el-input v-model="newobj.flowconclusion" placeholder="申报费用" />
              <el-input
                v-model="newobj.flowconclusion"
                placeholder="申报费用"
              />
            </el-form-item>
          </el-col>
        </el-row>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="dundcheck" v-if="dialogType == 'edit'">保存</el-button>
        <el-button type="primary" @click="dundcheck" v-if="dialogType == 'edit'"
          >保存</el-button
        >
        <el-button @click="cancel">取消</el-button>
      </div>
    </el-dialog>
@@ -348,7 +732,8 @@
  getdownloadYX,
  getdownloadBX,
  checkfund,
  listbypower, addFundSharedInfo
  listbypower,
  addFundSharedInfo
} from "@/api/project/fund";
import {
  onelistFunds,
@@ -368,7 +753,7 @@
  listOrganization,
  getOrganization,
  listReportname,
  listUser,
  listUser
} from "@/api/project/organization";
import {
  listFundflow,
@@ -376,7 +761,7 @@
  delFundflow,
  addFundflow,
  updateFundflow,
  exportFundflow,
  exportFundflow
} from "@/api/project/fundflow";
import {
@@ -386,20 +771,21 @@
  delExternalperson,
  addExternalperson,
  updateExternalperson,
  exportExternalperson,
  exportExternalperson
} from "@/api/project/externalperson";
import { getUserProfile } from "@/api/system/user";
import {
  listDonatebaseinfo,
  getDonatebaseinfo,
  getDonatebaseinfo
} from "@/api/project/donatebaseinfo";
import Li_area_select from "@/components/Address";
import OrgSelecter from "@/views/project/components/orgselect";
import { setItem, grtItem, removeItem } from "@/utils/storage.js";
export default {
  components: {
    Li_area_select,
    OrgSelecter,
    OrgSelecter
  },
  name: "Donateconsolationfund",
  dicts: [
@@ -413,6 +799,7 @@
    "sys_fund_type",
    "sys_finsubject",
    "sys_financeitemtype",
    "sys_stage_type"
  ],
  data() {
    return {
@@ -423,7 +810,7 @@
      newobj: {
        flowlevelone: null,
        flowconclusion: null,
        fundid: null,
        fundid: null
      },
      showFirstapprovelevel: false,
      showSecondapprovelevel: false,
@@ -432,7 +819,7 @@
        sheng: "",
        shi: "",
        qu: "",
        organizationname: null,
        organizationname: null
      },
      openbtn: true,
      isopen: 0,
@@ -475,16 +862,30 @@
      checkFlagOptions: [
        {
          value: 0,
          label: "已审批",
          label: "已审批"
        },
        {
          value: 1,
          label: "待审批",
          label: "待审批"
        },
        {
          value: 2,
          label: "全部",
          label: "全部"
        }
      ],
      checkmaterials: [
        {
          value: 1,
          label: "材料待审核"
        },
        {
          value: 2,
          label: "审查通过等待邮寄纸质材料"
        },
        {
          value: 3,
          label: "已收到纸质材料"
        }
      ],
      // 查询参数
      queryParams: {
@@ -495,20 +896,21 @@
        APPLICATIONENDTIME: null,
        CHECKFLAG: 1,
        APPLYTYPE: 1,
        money: null
      },
      // 表单参数
      form: {},
      // 表单校验
      rules: {
        username: [
          { required: true, message: "请输入申请人姓名", trigger: "blur" },
          { required: true, message: "请输入申请人姓名", trigger: "blur" }
        ],
        createTime: [
          { required: true, message: "请输入申请日期", trigger: "blur" },
          { required: true, message: "请输入申请日期", trigger: "blur" }
        ],
        amountrequested: [
          { required: true, message: "请输入申请金额", trigger: "blur" },
        ],
          { required: true, message: "请输入申请金额", trigger: "blur" }
        ]
      },
      //当前选中捐献案例
      curCase: {},
@@ -534,8 +936,8 @@
          hsfbx: null,
          hsfbz: null,
          total: null,
          title: null,
        },
          title: null
        }
      ],
      fundDetailArr: [],
      fundflowList: [],
@@ -555,7 +957,7 @@
        { name: "捐献者医学成本" },
        { name: "捐献者善后成本" },
        { name: "捐献伦理委员会劳务发放表" },
        { name: "捐献者家属交通食宿费" },
        { name: "捐献者家属交通食宿费" }
      ],
      itemArr: [],
      allnum: [],
@@ -563,39 +965,46 @@
      approveLevel: 5,
      show: 0,
      fundtypeArrAll: [],
      dialogType: "show",
      dialogType: "show"
    };
  },
  watch: {},
  created() {
    //this.getBaseInfoList();
    this.getlistbypower();
    //this.resetForm();
    this.getCurFundType();
    this.getUsermsg();
  },
  mounted() {
    if (grtItem("expertFeeCheck")) {
      this.queryParams = grtItem("expertFeeCheck");
      this.queryParams.APPLICATIONBEGTIME = "";
      this.queryParams.APPLICATIONENDTIME = "";
    }
    this.selectReporters();
    this.getlistOrganization();
    this.getlistbypower();
    //this.getlistUser();
    this.getlistExternalperson();
  },
  methods: {
    getUsermsg() {
      getUserProfile().then((response) => {
      getUserProfile().then(response => {
        console.log("登录用户信息", response.data);
        // this.defaultperson = response.data;
        // this.standardlevel = response.data.standardlevel;
        if (
          response.data.userName === "001" ||
          response.data.userName === "002" ||
          response.data.userName === "012" ||
          response.data.userName === "admin"
        ) {
          this.show = 1;
        } else {
          this.show = 3;
        }
        console.log("where", this.show);
        console.log(response.data.userName, this.show);
      });
    },
    selectapplication() {
@@ -605,8 +1014,10 @@
    },
    getlistbypower() {
      this.loading = true;
      listbypower(this.queryParams).then((res) => {
      listbypower(this.queryParams).then(res => {
        console.log("根据权限显示列表", res);
        removeItem("expertFeeCheck");
        setItem("expertFeeCheck", this.queryParams);
        this.loading = false;
        let list = res.rows;
        let arr = [];
@@ -620,7 +1031,7 @@
      let checkfundobj = {
        flowconclusion: this.newobj.flowlevelone,
        flowcontent: this.newobj.flowconclusion,
        fundid: this.form.id,
        fundid: this.form.id
      };
      if (
        checkfundobj.flowconclusion == null ||
@@ -630,7 +1041,7 @@
        this.$modal.msgError("请选择审核结论!");
        return;
      }
      checkfund(checkfundobj).then((res) => {
      checkfund(checkfundobj).then(res => {
        console.log("审核费用", res);
        this.reset();
        this.$modal.msgSuccess("审核完成!");
@@ -640,7 +1051,7 @@
    },
    getlistUser() {
      this.queryParams = {};
      listUser(this.queryParams).then((res) => {
      listUser(this.queryParams).then(res => {
        this.userlist = res.data;
      });
    },
@@ -652,7 +1063,7 @@
          sums[index] = "合计";
          return;
        }
        const values = data.map((item) => Number(item[column.property]));
        const values = data.map(item => Number(item[column.property]));
        if (
          column.property == "amount" //需要显示和合计纵列
        ) {
@@ -672,12 +1083,12 @@
    },
    getlistOrganization() {
      listOrganization().then((res) => { });
      listOrganization().then(res => {});
    },
    totaldayin(e) {
      // const id =this.row.id
      getdownloadBX(e).then((res) => {
      getdownloadBX(e).then(res => {
        if (res.downloadUrl) {
          var fileUrl = res;
          //获取当前网址
@@ -691,7 +1102,7 @@
          aEle.click();
          this.$alert("下载成功", "提示", {
            confirmButtonText: "确定",
            type: "success",
            type: "success"
          });
        }
      });
@@ -703,12 +1114,12 @@
    tojust(e) {
      let username = "111";
      getFund(e).then((res) => {
      getFund(e).then(res => {
        username = res.data.username;
        this.$modal
          .confirm('是否确认通过"' + username + '"的费用申请?')
          .then(function () {
            getFund(e).then((res) => {
          .then(function() {
            getFund(e).then(res => {
              let data = res.data;
              let financechecher = "已审核";
              data.financechecher = financechecher;
@@ -731,7 +1142,7 @@
    //   });
    // },
    getmessages(val) {
      getInfoBytheUserNo(val.beneficiaryno).then((res) => {
      getInfoBytheUserNo(val.beneficiaryno).then(res => {
        if (res.data) {
          this.$set(val, res.data);
          val.beneficiaryname = res.data.username;
@@ -758,18 +1169,18 @@
    getBaseInfoList() {
      this.loading = true;
      listDonatebaseinfo(this.queryParams).then((response) => {
      listDonatebaseinfo(this.queryParams).then(response => {
        this.donatebaseinfoList = response.rows;
        this.total = response.total;
        this.loading = false;
      });
    },
    //动态计算税前金额
    change(scope) { },
    change(scope) {},
    autodonorno() {
      listDonatebaseinfo().then((res) => {
      listDonatebaseinfo().then(res => {
        // console.log("所有捐献者列表:",res);
        res.rows.forEach((data) => {
        res.rows.forEach(data => {
          // console.log("data:",data);
          if (this.form.doname === data.name) {
            this.form.donorno = data.donorno;
@@ -789,7 +1200,7 @@
      this.loading = true;
      this.reset();
      var infoid = this.curCase.id;
      listFund().then((response) => {
      listFund().then(response => {
        this.loading = false;
        this.donateconsolationfundList = response.rows;
      });
@@ -857,7 +1268,7 @@
        annexregistform: null,
        consolationmoney: null,
        applytype: "1",
        recordstatus: null,
        recordstatus: null
      };
      this.resetForm("form");
    },
@@ -875,7 +1286,7 @@
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map((item) => item.id);
      this.ids = selection.map(item => item.id);
      this.single = selection.length !== 1;
      this.multiple = !selection.length;
    },
@@ -899,12 +1310,33 @@
      } else {
        const h = this.$createElement;
        this.$message({
          message: h("p", null, [h("span", null, "请先选择左方捐献案例 ")]),
          message: h("p", null, [h("span", null, "请先选择左方捐献案例 ")])
        });
      }
    },
    beforehandCheck(row) {
      this.$router.push({
        path: "/finance/applyDetail/",
        query: {
          id: row.id,
          businessType: "1",
          beforehandType: "1",
          operationType: "check"
        }
      });
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
    handleCheck(row) {
      this.$router.push({
        path: "/finance/applyDetail/",
        query: {
          id: row.id,
          businessType: "1",
          operationType: "check"
        }
      });
      return;
      this.isopen = 0;
      this.reset();
      this.queryParams.params = {};
@@ -916,13 +1348,13 @@
      const id = row.id || this.ids;
      this.loading = true;
      this.dialogType = "edit";
      getFund(id).then((response) => {
      getFund(id).then(response => {
        this.loading = false;
        this.form = response.data;
        this.form.name = this.curCase.name;
        console.log("wdadwadwadaw", this.form);
        this.loading = true;
        getownFundDetail(this.form.id).then((res) => {
        getownFundDetail(this.form.id).then(res => {
          this.loading = false;
          this.fundDetailArr = res.data;
          for (let m = 0; m < this.fundDetailArr.length; m++) {
@@ -934,9 +1366,9 @@
      this.newobj.fundid = row.id;
      let listFundflowparams = {
        fundid: row.id,
        fundtype: 2,
        fundtype: 2
      };
      listFundflow(listFundflowparams).then((res) => {
      listFundflow(listFundflowparams).then(res => {
        console.log(" fundtype: 1", res);
        this.fundflowList = res.rows;
      });
@@ -945,7 +1377,17 @@
    },
    //查看审核详情
    handleShow(row) {
    handleDetail(row) {
      this.$router.push({
        path: "/finance/applyDetail/",
        query: {
          id: row.id,
          businessType: "1",
          operationType: "detail"
        }
      });
      return;
      this.isopen = 0;
      this.reset();
      this.queryParams.params = {};
@@ -957,16 +1399,16 @@
      //加载审核记录
      let listFundflowparams = {
        fundid: row.id,
        fundtype: 2,
        fundtype: 2
      };
      listFundflow(listFundflowparams).then((res) => {
      listFundflow(listFundflowparams).then(res => {
        this.fundflowList = res.rows;
      });
      getFund(row.id).then((response) => {
      getFund(row.id).then(response => {
        this.form = response.data;
        this.form.name = this.curCase.name;
        console.log("applytype", this.form.applytype);
        getownFundDetail(row.id).then((res) => {
        getownFundDetail(row.id).then(res => {
          this.fundDetailArr = res.data;
          for (let m = 0; m < this.fundDetailArr.length; m++) {
            this.fundDetailArr[m].itemArr = [];
@@ -979,9 +1421,9 @@
      const infoid = this.curCase.id;
      const aaa = {
        infoid: infoid,
        count: this.idss,
        count: this.idss
      };
      listFunddetails(aaa).then((res) => { });
      listFunddetails(aaa).then(res => {});
    },
    //初始化费用申请表单界面
@@ -1023,8 +1465,8 @@
          updateBy: null,
          updateTime: null,
          uploadflag: null,
          uploadtime: null,
        },
          uploadtime: null
        }
      ];
    },
@@ -1068,7 +1510,7 @@
        updateBy: null,
        updateTime: null,
        uploadflag: null,
        uploadtime: null,
        uploadtime: null
      };
      this.fundDetailArr.push(rowData);
    },
@@ -1076,19 +1518,19 @@
      this.$confirm("是否确认删除?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "success",
        type: "success"
      })
        .then(() => {
          if (row.id !== null) {
            delFunddetail(row.id).then((res) => {
            delFunddetail(row.id).then(res => {
              if (res.code === 200) {
                this.$confirm("删除成功", "提示", {
                  confirmButtonText: "确定",
                  cancelButtonText: "取消",
                  type: "success",
                  type: "success"
                }).then(() => {
                  this.$set(rows, rows.splice(index, 1));
                  getownFundDetail(this.form.id).then((res) => {
                  getownFundDetail(this.form.id).then(res => {
                    this.$set(this.fundDetailArr, res.data);
                    // this.fundDetailArr = res.data
                    // console.log('删除后',this.fundDetailArr)
@@ -1113,23 +1555,21 @@
      this.$confirm("是否确认保存?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      })
        .then(() => {
          let formData = this.form;
          let tempItemArr = rows.itemArr;
          rows.fundid = formData.id;
          //获取服务项目明细
          let itemIndex = tempItemArr.findIndex(
            (item) => rows.itemid == item.id
          );
          let itemIndex = tempItemArr.findIndex(item => rows.itemid == item.id);
          if (itemIndex > -1) {
            rows.itemname = tempItemArr[itemIndex].itemname;
            rows.itemid = tempItemArr[itemIndex].id;
          }
          //获取applytypename
          let applytypeIndex = this.fundtypeArr.findIndex(
            (item) => rows.applytype == item.value
            item => rows.applytype == item.value
          );
          if (applytypeIndex > -1) {
            rows.applytypename = this.fundtypeArr[applytypeIndex].label;
@@ -1142,10 +1582,10 @@
            rows.unitname = rows.unitno;
          }
          if (rows.id > 0) {
            updateFunddetail(rows).then((res) => {
            updateFunddetail(rows).then(res => {
              this.$modal.msgSuccess("修改成功");
              this.loading = true;
              getownFundDetail(this.form.id).then((res) => {
              getownFundDetail(this.form.id).then(res => {
                this.fundDetailArr = res.data;
                for (let m = 0; m < this.fundDetailArr.length; m++) {
                  this.fundDetailArr[m].itemArr = [];
@@ -1155,8 +1595,8 @@
              });
            });
          } else {
            addFunddetail(rows).then((response2) => {
              getownFundDetail(this.form.id).then((res) => {
            addFunddetail(rows).then(response2 => {
              getownFundDetail(this.form.id).then(res => {
                this.$modal.msgSuccess("新增成功");
                this.fundDetailArr = res.data;
                for (let m = 0; m < this.fundDetailArr.length; m++) {
@@ -1176,10 +1616,10 @@
      this.$confirm("是否确认保存?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
        type: "warning"
      })
        .then(() => {
          updateFunddetail(this.fundDetailArr).then((res) => {
          updateFunddetail(this.fundDetailArr).then(res => {
            console.log("牛丸牛啊", res);
          });
        })
@@ -1195,7 +1635,7 @@
      for (let i = 0; i < this.applicationDetailArr.length; i++) {
        // console.log('qqq',this.applicationDetailArr[i]);
        let tempData = this.applicationDetailArr[i];
        Object.keys(tempData).forEach(function (key) {
        Object.keys(tempData).forEach(function(key) {
          // console.log('iii',key, tempData[key]);
          if (
            tempData[key] == null ||
@@ -1233,7 +1673,7 @@
    //获取费用类型
    getCurFundType() {
      getFundTypeAll(1).then((res) => {
      getFundTypeAll(1).then(res => {
        console.log("费用类型", res.data);
        let dataList = res.data;
        this.fundtypeArrAll = dataList;
@@ -1241,7 +1681,7 @@
        for (let m = 0; m < dataList.length; m++) {
          this.fundtypeArr.push({
            value: dataList[m].itemType,
            label: dataList[m].itemTypeName,
            label: dataList[m].itemTypeName
          });
        }
      });
@@ -1265,7 +1705,7 @@
      let arrreportlist = [];
      for (let i = 0; i < arr.length; i++) {
        this.arrr2 = [];
        listReportname(arr[i]).then((res) => {
        listReportname(arr[i]).then(res => {
          this.arrr2 = res.data;
          this.arrr3 = this.arrr3.concat(this.arrr2);
          console.log("adadadadasdsad", this.arrr3, this.userlist);
@@ -1274,7 +1714,7 @@
    },
    selectpersonmsg(row) {
      this.personlist.map((res) => {
      this.personlist.map(res => {
        if (row.beneficiaryname == res.username) {
          row.beneficiaryno = res.userno;
          row.beneficiaryname = res.username;
@@ -1294,7 +1734,7 @@
    },
    getlistExternalperson() {
      listExternalperson().then((res) => {
      listExternalperson().then(res => {
        this.personlist = res.rows;
      });
    },
@@ -1327,7 +1767,7 @@
    //专家费劳务打印
    dayin(id) {
      getdownloadLW(id).then((res) => {
      getdownloadLW(id).then(res => {
        if (res.downloadUrl) {
          var fileUrl = res;
          //获取当前网址
@@ -1341,7 +1781,7 @@
          aEle.click();
          this.$alert("下载成功", "提示", {
            confirmButtonText: "确定",
            type: "success",
            type: "success"
          });
        }
      });
@@ -1352,7 +1792,7 @@
      if (this.form.id) {
        const id = this.form.id;
        console.log(id);
        getdownloadLW(id).then((res) => {
        getdownloadLW(id).then(res => {
          if (res.downloadUrl) {
            var fileUrl = res;
            //获取当前网址
@@ -1366,14 +1806,14 @@
            aEle.click();
            this.$alert("下载成功", "提示", {
              confirmButtonText: "确定",
              type: "success",
              type: "success"
            });
          }
        });
      } else {
        this.$alert("请确认您要下载的专家劳务表", "提醒", {
          confirmButtonText: "确定",
          type: "warning",
          type: "warning"
        });
      }
    },
@@ -1381,7 +1821,7 @@
    dayin1() {
      if (this.form.id) {
        const id = this.form.id;
        getdownloadLW(id).then((res) => {
        getdownloadLW(id).then(res => {
          if (res.downloadUrl) {
            var fileUrl = res;
            //获取当前网址
@@ -1395,14 +1835,14 @@
            aEle.click();
            this.$alert("下载成功", "提示", {
              confirmButtonText: "确定",
              type: "success",
              type: "success"
            });
          }
        });
      } else {
        this.$alert("请确认您要下载的专家劳务表", "提醒", {
          confirmButtonText: "确定",
          type: "warning",
          type: "warning"
        });
      }
    },
@@ -1410,7 +1850,7 @@
    dayin2() {
      if (this.form.id) {
        const id = this.form.id;
        getdownloadYX(id).then((res) => {
        getdownloadYX(id).then(res => {
          if (res.downloadUrl) {
            var fileUrl = res;
            //获取当前网址
@@ -1424,14 +1864,14 @@
            aEle.click();
            this.$alert("下载成功", "提示", {
              confirmButtonText: "确定",
              type: "success",
              type: "success"
            });
          }
        });
      } else {
        this.$alert("请确认您要下载的专家劳务表", "提醒", {
          confirmButtonText: "确定",
          type: "warning",
          type: "warning"
        });
      }
    },
@@ -1439,7 +1879,7 @@
    dayin3() {
      if (this.form.id) {
        const id = this.form.id;
        getdownloadSH(id).then((res) => {
        getdownloadSH(id).then(res => {
          if (res.downloadUrl) {
            var fileUrl = res;
            //获取当前网址
@@ -1453,14 +1893,14 @@
            aEle.click();
            this.$alert("下载成功", "提示", {
              confirmButtonText: "确定",
              type: "success",
              type: "success"
            });
          }
        });
      } else {
        this.$alert("请确认您要下载的专家劳务表", "提醒", {
          confirmButtonText: "确定",
          type: "warning",
          type: "warning"
        });
      }
    },
@@ -1474,7 +1914,7 @@
    dayin5() {
      if (this.form.id) {
        const id = this.form.id;
        getdownloadSS(id).then((res) => {
        getdownloadSS(id).then(res => {
          if (res.downloadUrl) {
            var fileUrl = res;
            //获取当前网址
@@ -1488,7 +1928,7 @@
            aEle.click();
            this.$alert("下载成功", "提示", {
              confirmButtonText: "确定",
              type: "success",
              type: "success"
            });
          }
          console.log("家属伙食交通费", res);
@@ -1496,10 +1936,10 @@
      } else {
        this.$alert("请确认您要下载的专家劳务表", "提醒", {
          confirmButtonText: "确定",
          type: "warning",
          type: "warning"
        });
      }
    },
  },
    }
  }
};
</script>