yxh
2023-05-17 bd02920548b2c867704f64d6feff0d96e0227fcc
src/views/project/fund/fundapplycheck/index.vue
@@ -1,55 +1,27 @@
<template>
  <div class="app-container">
    <el-form
      :model="queryParams"
      ref="queryForm"
      :inline="true"
      v-show="showSearch"
      label-width="120px"
    >
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="120px">
      <el-row align="left">
        <el-col :span="9">
          <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="handleQuery">
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col :span="8">
          <el-form-item label="申请人" label-width="180px" prop="APPLICANT">
            <el-input
              v-model="queryParams.APPLICANT"
              placeholder="请输入申请人姓名"
              clearable
              size="small"
              @keyup.enter.native="handleQuery"
            />
            <el-input v-model="queryParams.APPLICANT" placeholder="请输入申请人姓名" clearable size="small"
              @keyup.enter.native="handleQuery" />
          </el-form-item>
        </el-col>
        <el-col :span="7">
          <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-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>
@@ -58,70 +30,28 @@
    </el-form>
    <el-row type="flex" :gutter="10" align="right" class="mb8">
      <el-col>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
          >搜索</el-button
        >
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
          >重置</el-button
        >
        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
      </el-col>
    </el-row>
    <el-form ref="infoform" label-width="100px">
      <el-row>
        <el-table
          v-loading="loading"
          border
          :data="donateconsolationfundList"
          @selection-change="handleSelectionChange"
        >
          <el-table-column
            label="审批状态"
            width="120"
            align="center"
            prop="checkFlag"
          >
        <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-if="scope.row.checkFlag == 0"><i class="el-icon-check"
                  style="color: #5fb878; font-weight: bold"></i></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="donorno"
            width="240px"
          />
          <el-table-column
            label="捐献者"
            align="center"
            prop="donorname"
            width="120px"
          />
          <el-table-column label="申请人" align="center" prop="username" width="120px" />
          <el-table-column label="捐献编号" align="center" prop="donorno" width="240px" />
          <el-table-column label="捐献者" align="center" prop="donorname" width="120px" />
          <!-- <el-table-column
            label="工作单位"
            align="center"
@@ -134,115 +64,48 @@
            prop="phone"
            width="160"
          /> -->
          <el-table-column
            label="申请金额"
            align="center"
            prop="amountrequested"
            width="120px"
          />
          <el-table-column label="申请金额" align="center" prop="amountrequested" width="120px" />
          <el-table-column
            label="记录状态"
            align="center"
            prop="recordstatus"
            width="180"
          >
          <el-table-column label="记录状态" align="center" prop="recordstatus" width="180">
            <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="prepaidamount"
            width="120px"
          />
          <el-table-column
            label="财务审核"
            align="center"
            prop="financechecher"
            width="140"
          />
          <el-table-column label="预支费用" align="center" prop="prepaidamount" width="120px" />
          <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="260px"
          >
          <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="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>
              <!-- v-hasPermi="['project:donateconsolationfund:edit']" -->
              <el-button
                size="mini"
                type="text"
                icon="el-icon-download"
                @click="totaldayin(scope.row.id)"
                v-hasPermi="['project:donateconsolationfund:download']"
                >下载</el-button
              >
              <el-button size="mini" type="text" icon="el-icon-download" @click="totaldayin(scope.row.id)"
                v-hasPermi="['project:donateconsolationfund:download']">下载</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="1600px"
      :title="title"
      style="text-align: center"
    >
    <el-dialog :visible.sync="dialogOpen" width="1600px" :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="8">
            <el-form-item label="捐献编号" prop="donorno">
              <el-input
                disabled
                v-model="form.donorno"
                placeholder="请输入捐献编号"
                clearable
              />
              <el-input disabled v-model="form.donorno" placeholder="请输入捐献编号" clearable />
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="捐献者" prop="name">
              <el-input
                disabled
                v-model="form.name"
                placeholder="请输入捐献者姓名"
                clearable
              />
              <el-input disabled v-model="form.name" placeholder="请输入捐献者姓名" clearable />
            </el-form-item>
          </el-col>
        </el-row>
@@ -254,41 +117,23 @@
                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="8">
            <el-form-item label="联系电话" prop="phone">
              <el-input
                v-model="form.phone"
                placeholder="请输入申请者的联系方式"
                clearable
              />
              <el-input v-model="form.phone" placeholder="请输入申请者的联系方式" clearable />
            </el-form-item>
          </el-col>
          <el-col :span="8">
            <el-form-item label="工作单位" prop="unitno">
              <org-selecter
                ref="orgSelecter"
                :org-type="'3'"
                v-model="form.unitno"
              />
              <org-selecter ref="orgSelecter" :org-type="'3'" v-model="form.unitno" />
            </el-form-item>
          </el-col>
        </el-row>
@@ -296,72 +141,31 @@
        <el-row style="text-align: left">
          <el-form-item label="申请类型">
            <el-radio-group v-model="form.applytype" @change="LoadItemTypeArr">
              <el-radio v-model="form.applytype" label="2"
                >伦理审查专家费申请</el-radio
              >
              <el-radio v-model="form.applytype" label="2">伦理审查专家费申请</el-radio>
            </el-radio-group>
          </el-form-item>
        </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"
@@ -372,48 +176,21 @@
              </template>
            </el-table-column>
            <el-table-column
              prop="beneficiaryname"
              align="center"
              label="姓名"
              width="120"
            >
            <el-table-column prop="beneficiaryname" 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="amount"
              align="center"
              label="税前金额"
              width="150"
            >
            <el-table-column prop="amount" align="center" label="税前金额" width="150">
              <template slot-scope="scope">
                <el-input
                  v-model="scope.row.amount"
                  @blur="
                    (val) => {
                <el-input v-model="scope.row.amount" @blur="(val) => {
                      sumTotalFee();
                    }
                  "
                  placeholder="税前金额"
                />
                  " placeholder="税前金额" />
              </template>
            </el-table-column>
            <!-- <el-table-column
@@ -426,111 +203,49 @@
                <el-input v-model="scope.row.taxamount" placeholder="扣税" />
              </template>
            </el-table-column> -->
            <el-table-column
              prop="taxedamount"
              align="center"
              label="税后金额"
              width="150"
            >
            <el-table-column prop="taxedamount" align="center" label="税后金额" width="150">
              <template slot-scope="scope">
                <el-input
                  v-model="scope.row.taxedamount"
                  placeholder="税后金额"
                  @blur="
                    (val) => {
                <el-input v-model="scope.row.taxedamount" placeholder="税后金额" @blur="(val) => {
                      sumTotalFee();
                    }
                  "
                />
                  " />
              </template>
            </el-table-column>
            <el-table-column
              prop="unitno"
              align="center"
              label="单位"
              width="180"
            >
            <el-table-column prop="unitno" align="center" label="单位" width="180">
              <template slot-scope="scope">
                <org-selecter
                  :ref="'unitSel' + scope.$index"
                  :org-type="'3'"
                  v-model="scope.row.unitno"
                />
                <org-selecter :ref="'unitSel' + scope.$index" :org-type="'3'" v-model="scope.row.unitno" />
              </template>
            </el-table-column>
            <el-table-column
              prop="title"
              align="center"
              label="职称"
              width="180"
            >
            <el-table-column prop="title" align="center" label="职称" width="180">
              <template slot-scope="scope">
                <el-input v-model="scope.row.title" 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="200"
            >
            <el-table-column prop="depositbank" align="center" label="开户银行" width="200">
              <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="210"
            >
            <el-table-column prop="bankcardno" align="center" label="银行卡号" width="210">
              <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="120">
              <template slot-scope="scope">
                <el-button type="text" size="mini" @click="addRow"
                  >新增</el-button
                >
                <el-button
                  @click="saveRows(scope.row, scope.$index)"
                  type="text"
                  size="small"
                  v-if="show === 1"
                >
                <el-button type="text" size="mini" @click="addRow">新增</el-button>
                <el-button @click="saveRows(scope.row, scope.$index)" type="text" size="small" v-if="show === 1">
                  保存
                </el-button>
                <el-button
                  @click.native.prevent="
                <el-button @click.native.prevent="
                    deleteRows(scope.row, scope.$index, fundDetailArr)
                  "
                  type="text"
                  size="small"
                  v-hasPermi="['project:ethicFeeCheck:delete']"
                >
                  " type="text" size="small" v-hasPermi="['project:ethicFeeCheck:delete']">
                  删除
                </el-button>
              </template>
@@ -541,14 +256,8 @@
          <el-col :span="7">
            <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>
@@ -564,42 +273,20 @@
          </el-col>
          <el-col :span="7">
            <el-form-item label="财务审核" prop="financechecher">
              <el-input
                v-model="form.financechecher"
                placeholder="请输入财务审核"
              />
              <el-input v-model="form.financechecher" placeholder="请输入财务审核" />
            </el-form-item>
          </el-col>
        </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>
@@ -614,10 +301,7 @@
          </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>
@@ -645,7 +329,7 @@
  getdownloadYX,
  getdownloadBX,
  checkfund,
  listbypower,
  listbypower,addFundSharedInfo
} from "@/api/project/fund";
import {
  onelistFunds,