yxh
2023-06-15 e5e3e1a5bc8aa300c580126703bb6067221dee96
src/views/project/funddetail/index.vue
@@ -1,89 +1,40 @@
<template>
  <div class="app-container">
    <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
      <el-form-item label="收益人姓名 家属或专家" prop="beneficiaryname">
        <el-input
          v-model="queryParams.beneficiaryname"
          placeholder="请输入收益人姓名 家属或专家"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      <el-form-item label="专家姓名" prop="beneficiaryname">
        <el-input v-model="queryParams.beneficiaryname" placeholder="请输入专家姓名" clearable size="small"
          @keyup.enter.native="handleQuery" />
      </el-form-item>
      <el-form-item label="工作单位" prop="uintname">
        <el-input
          v-model="queryParams.uintname"
          placeholder="请输入工作单位"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
        <el-input v-model="queryParams.uintname" placeholder="请输入工作单位" clearable size="small"
          @keyup.enter.native="handleQuery" />
      </el-form-item>
      <el-form-item label="费用类别 见字典sys_SubjectType" prop="applytype">
        <el-select v-model="queryParams.applytype" placeholder="请选择费用类别 见字典sys_SubjectType" clearable size="small">
      <el-form-item label="费用类别" prop="applytype">
        <el-select v-model="queryParams.applytype" placeholder="请选择费用类别" clearable size="small">
          <el-option label="请选择字典生成" value="" />
        </el-select>
      </el-form-item>
      <el-form-item label="项目名称" prop="itemname">
        <el-input
          v-model="queryParams.itemname"
          placeholder="请输入项目名称"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
        <el-input v-model="queryParams.itemname" placeholder="请输入项目名称" clearable size="small"
          @keyup.enter.native="handleQuery" />
      </el-form-item>
      <el-form-item label="项目类别" prop="itemtype">
        <el-select v-model="queryParams.itemtype" placeholder="请选择项目类别" clearable size="small">
          <el-option label="请选择字典生成" value="" />
        </el-select>
      </el-form-item>
      <el-form-item label="申请金额" prop="amount">
        <el-input
          v-model="queryParams.amount"
          placeholder="请输入申请金额"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="记录状态" prop="recordstatus">
        <el-select v-model="queryParams.recordstatus" placeholder="请选择记录状态" clearable size="small">
          <el-option label="请选择字典生成" value="" />
        </el-select>
      </el-form-item>
      <el-form-item label="创建人" prop="createBy">
        <el-input
          v-model="queryParams.createBy"
          placeholder="请输入创建人"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      <el-form-item label="经办人" prop="createBy">
        <el-input v-model="queryParams.createBy" placeholder="请输入创建人" clearable size="small"
          @keyup.enter.native="handleQuery" />
      </el-form-item>
      <el-form-item label="创建日期" prop="createTime">
        <el-date-picker clearable size="small"
          v-model="queryParams.createTime"
          type="date"
          value-format="yyyy-MM-dd"
      <el-form-item label="申请日期" prop="createTime">
        <el-date-picker clearable size="small" v-model="queryParams.createTime" type="date" value-format="yyyy-MM-dd"
          placeholder="选择创建日期">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="上传标志" prop="uploadflag">
        <el-input
          v-model="queryParams.uploadflag"
          placeholder="请输入上传标志"
          clearable
          size="small"
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="上传时间" prop="uploadtime">
        <el-date-picker clearable size="small"
          v-model="queryParams.uploadtime"
          type="date"
          value-format="yyyy-MM-dd"
          placeholder="选择上传时间">
        </el-date-picker>
      </el-form-item>
      <el-form-item>
@@ -94,216 +45,170 @@
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-plus"
          size="mini"
          @click="handleAdd"
          v-hasPermi="['project:funddetail:add']"
        >新增</el-button>
        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
          v-hasPermi="['project:funddetail:add']">新增</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="success"
          plain
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleUpdate"
          v-hasPermi="['project:funddetail:edit']"
        >修改</el-button>
        <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
          v-hasPermi="['project:funddetail:edit']">修改</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="danger"
          plain
          icon="el-icon-delete"
          size="mini"
          :disabled="multiple"
          @click="handleDelete"
          v-hasPermi="['project:funddetail:remove']"
        >删除</el-button>
        <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
          v-hasPermi="['project:funddetail:remove']">删除</el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="warning"
          plain
          icon="el-icon-download"
          size="mini"
          :loading="exportLoading"
          @click="handleExport"
          v-hasPermi="['project:funddetail:export']"
        >导出</el-button>
        <el-button type="warning" plain icon="el-icon-download" size="mini" :loading="exportLoading" @click="handleExport"
          v-hasPermi="['project:funddetail:export']">导出</el-button>
      </el-col>
      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
    </el-row>
    <el-table v-loading="loading" :data="funddetailList" @selection-change="handleSelectionChange">
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="主键ID" align="center" prop="id" />
      <el-table-column label="费用申请主表ID" align="center" prop="fundid" />
      <el-table-column label="收益人姓名 家属或专家" align="center" prop="beneficiaryname" />
      <el-table-column label="收益人编号" align="center" prop="beneficiaryno" />
      <el-table-column label="工作单位" align="center" prop="uintname" />
      <el-table-column label="工作单位编号" align="center" prop="uintno" />
      <el-table-column label="工作单位用户编号" align="center" prop="uintuserno" />
      <el-table-column label="证件类型 根据字典sys_IDType" align="center" prop="idcardtype" />
      <el-table-column label="证件号码" align="center" prop="idcardno" />
      <el-table-column label="性别 根据字典sys_user_sex" align="center" prop="sex" />
      <el-table-column label="与捐赠者关系 根据字典sys_FamilyRelation" align="center" prop="familyrelations" />
      <el-table-column label="联系电话" align="center" prop="phone" />
      <el-table-column label="开户银行" align="center" prop="depositbank" />
      <el-table-column label="卡号" align="center" prop="bankcardno" />
      <el-table-column label="支行名称" align="center" prop="branchbankname" />
      <el-table-column label="银行卡照片路径 多个用;分开" align="center" prop="annexbankcard" />
      <el-table-column label="登记表照片路径 多个用;分开" align="center" prop="annexregistform" />
      <el-table-column label="费用类别 见字典sys_SubjectType" align="center" prop="applytype" />
      <el-table-column label="项目ID" align="center" prop="itemid" />
      <el-table-column label="项目名称" align="center" prop="itemname" />
      <el-table-column label="专家姓名" width="120" align="center" prop="beneficiaryname" />
      <el-table-column label="费用类别" align="center" prop="applytype" />
      <el-table-column label="项目类别" align="center" prop="itemtype" />
      <el-table-column label="申请金额" align="center" prop="amount" />
      <el-table-column label="预支金额" align="center" prop="prepaidamount" />
      <el-table-column label="发票张数" align="center" prop="invoicecount" />
      <el-table-column label="附件张数" align="center" prop="attachcount" />
      <el-table-column label="备注" align="center" prop="remark" />
      <el-table-column label="记录状态" align="center" prop="recordstatus" />
      <el-table-column label="上传标志" align="center" prop="uploadflag" />
      <el-table-column label="上传时间" align="center" prop="uploadtime" width="180">
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.uploadtime, '{y}-{m}-{d}') }}</span>
        </template>
      </el-table-column>
      <el-table-column label="费用项目名称" align="left" prop="itemname" />
      <el-table-column label="费用金额" align="center" prop="amount" />
      <el-table-column label="扣税金额" align="center" prop="taxamount" />
      <el-table-column label="税后金额" align="center" prop="taxedamount" />
      <!--
      <el-table-column label="专家单位" align="center" prop="uintname" />
      <el-table-column label="证件号码" align="center" prop="idcardno" />
      <el-table-column label="专家电话" align="center" prop="phone" />
      <el-table-column label="状态" align="center" prop="recordstatus" />
      <el-table-column label="经办人" align="center" prop="createby" />
      <el-table-column label="申请日期" align="center" prop="createtime" />
      -->
      <el-table-column label="备注" align="left" prop="remark" />
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
        <template slot-scope="scope">
          <el-button
            size="mini"
            type="text"
            icon="el-icon-edit"
            @click="handleUpdate(scope.row)"
            v-hasPermi="['project:funddetail:edit']"
          >修改</el-button>
          <el-button
            size="mini"
            type="text"
            icon="el-icon-delete"
            @click="handleDelete(scope.row)"
            v-hasPermi="['project:funddetail:remove']"
          >删除</el-button>
          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
            v-hasPermi="['project:funddetail:edit']">修改</el-button>
          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
            v-hasPermi="['project:funddetail:remove']">删除</el-button>
        </template>
      </el-table-column>
    </el-table>
    <pagination
      v-show="total>0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />
    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
      @pagination="getList" />
    <!-- 添加或修改费用申请明细对话框 -->
    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
        <el-form-item label="费用申请主表ID" prop="fundid">
          <el-input v-model="form.fundid" placeholder="请输入费用申请主表ID" />
        </el-form-item>
        <el-form-item label="收益人姓名 家属或专家" prop="beneficiaryname">
          <el-input v-model="form.beneficiaryname" placeholder="请输入收益人姓名 家属或专家" />
        </el-form-item>
        <el-form-item label="收益人编号" prop="beneficiaryno">
          <el-input v-model="form.beneficiaryno" placeholder="请输入收益人编号" />
        </el-form-item>
        <el-form-item label="工作单位" prop="uintname">
          <el-input v-model="form.uintname" placeholder="请输入工作单位" />
        </el-form-item>
        <el-form-item label="工作单位编号" prop="uintno">
          <el-input v-model="form.uintno" placeholder="请输入工作单位编号" />
        </el-form-item>
        <el-form-item label="工作单位用户编号" prop="uintuserno">
          <el-input v-model="form.uintuserno" placeholder="请输入工作单位用户编号" />
        </el-form-item>
        <el-form-item label="证件类型 根据字典sys_IDType" prop="idcardtype">
          <el-select v-model="form.idcardtype" placeholder="请选择证件类型 根据字典sys_IDType">
            <el-option label="请选择字典生成" value="" />
          </el-select>
        </el-form-item>
        <el-form-item label="证件号码" prop="idcardno">
          <el-input v-model="form.idcardno" placeholder="请输入证件号码" />
        </el-form-item>
        <el-form-item label="性别 根据字典sys_user_sex" prop="sex">
          <el-select v-model="form.sex" placeholder="请选择性别 根据字典sys_user_sex">
            <el-option label="请选择字典生成" value="" />
          </el-select>
        </el-form-item>
        <el-form-item label="与捐赠者关系 根据字典sys_FamilyRelation" prop="familyrelations">
          <el-input v-model="form.familyrelations" placeholder="请输入与捐赠者关系 根据字典sys_FamilyRelation" />
        </el-form-item>
        <el-form-item label="联系电话" prop="phone">
          <el-input v-model="form.phone" placeholder="请输入联系电话" />
        </el-form-item>
        <el-form-item label="开户银行" prop="depositbank">
          <el-input v-model="form.depositbank" placeholder="请输入开户银行" />
        </el-form-item>
        <el-form-item label="卡号" prop="bankcardno">
          <el-input v-model="form.bankcardno" placeholder="请输入卡号" />
        </el-form-item>
        <el-form-item label="支行名称" prop="branchbankname">
          <el-input v-model="form.branchbankname" placeholder="请输入支行名称" />
        </el-form-item>
        <el-form-item label="银行卡照片路径 多个用;分开" prop="annexbankcard">
          <el-input v-model="form.annexbankcard" placeholder="请输入银行卡照片路径 多个用;分开" />
        </el-form-item>
        <el-form-item label="登记表照片路径 多个用;分开" prop="annexregistform">
          <el-input v-model="form.annexregistform" placeholder="请输入登记表照片路径 多个用;分开" />
        </el-form-item>
        <el-form-item label="费用类别 见字典sys_SubjectType" prop="applytype">
          <el-select v-model="form.applytype" placeholder="请选择费用类别 见字典sys_SubjectType">
            <el-option label="请选择字典生成" value="" />
          </el-select>
        </el-form-item>
        <el-form-item label="项目ID" prop="itemid">
          <el-input v-model="form.itemid" placeholder="请输入项目ID" />
        </el-form-item>
        <el-form-item label="项目名称" prop="itemname">
          <el-input v-model="form.itemname" placeholder="请输入项目名称" />
        </el-form-item>
        <el-form-item label="项目类别" prop="itemtype">
          <el-select v-model="form.itemtype" placeholder="请选择项目类别">
            <el-option label="请选择字典生成" value="" />
          </el-select>
        </el-form-item>
        <el-form-item label="申请金额" prop="amount">
          <el-input v-model="form.amount" placeholder="请输入申请金额" />
        </el-form-item>
        <el-form-item label="预支金额" prop="prepaidamount">
          <el-input v-model="form.prepaidamount" placeholder="请输入预支金额" />
        </el-form-item>
        <el-form-item label="发票张数" prop="invoicecount">
          <el-input v-model="form.invoicecount" placeholder="请输入发票张数" />
        </el-form-item>
        <el-form-item label="附件张数" prop="attachcount">
          <el-input v-model="form.attachcount" placeholder="请输入附件张数" />
        </el-form-item>
        <el-form-item label="备注" prop="remark">
          <el-input v-model="form.remark" placeholder="请输入备注" />
        </el-form-item>
        <el-form-item label="记录状态">
          <el-radio-group v-model="form.recordstatus">
            <el-radio label="1">请选择字典生成</el-radio>
          </el-radio-group>
        </el-form-item>
        <el-form-item label="上传标志" prop="uploadflag">
          <el-input v-model="form.uploadflag" placeholder="请输入上传标志" />
        </el-form-item>
        <el-form-item label="上传时间" prop="uploadtime">
          <el-date-picker clearable size="small"
            v-model="form.uploadtime"
            type="date"
            value-format="yyyy-MM-dd"
            placeholder="选择上传时间">
          </el-date-picker>
        </el-form-item>
    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
        <el-row>
          <el-col :span="5"><el-form-item label="费用申请主表ID" prop="fundid">
              <el-input v-model="form.fundid" placeholder="请输入费用申请主表ID" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="收益人姓名 家属或专家" prop="beneficiaryname">
              <el-input v-model="form.beneficiaryname" placeholder="请输入收益人姓名 家属或专家" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="收益人编号" prop="beneficiaryno">
              <el-input v-model="form.beneficiaryno" placeholder="请输入收益人编号" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="工作单位" prop="uintname">
              <el-input v-model="form.uintname" placeholder="请输入工作单位" />
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"><el-form-item label="工作单位编号" prop="uintno">
              <el-input v-model="form.uintno" placeholder="请输入工作单位编号" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="工作单位用户编号" prop="uintuserno">
              <el-input v-model="form.uintuserno" placeholder="请输入工作单位用户编号" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="证件类型 根据字典sys_IDType" prop="idcardtype">
              <el-select v-model="form.idcardtype" placeholder="请选择证件类型 根据字典sys_IDType">
                <el-option label="请选择字典生成" value="" />
              </el-select>
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="证件号码" prop="idcardno">
              <el-input v-model="form.idcardno" placeholder="请输入证件号码" />
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"><el-form-item label="性别 根据字典sys_user_sex" prop="sex">
              <el-select v-model="form.sex" placeholder="请选择性别 根据字典sys_user_sex">
                <el-option label="请选择字典生成" value="" />
              </el-select>
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="与捐赠者关系 根据字典sys_FamilyRelation" prop="familyrelations">
              <el-input v-model="form.familyrelations" placeholder="请输入与捐赠者关系 根据字典sys_FamilyRelation" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="联系电话" prop="phone">
              <el-input v-model="form.phone" placeholder="请输入联系电话" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="开户银行" prop="depositbank">
              <el-input v-model="form.depositbank" placeholder="请输入开户银行" />
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"> <el-form-item label="卡号" prop="bankcardno">
              <el-input v-model="form.bankcardno" placeholder="请输入卡号" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="支行名称" prop="branchbankname">
              <el-input v-model="form.branchbankname" placeholder="请输入支行名称" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="银行卡照片路径 多个用;分开" prop="annexbankcard">
              <el-input v-model="form.annexbankcard" placeholder="请输入银行卡照片路径 多个用;分开" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="登记表照片路径 多个用;分开" prop="annexregistform">
              <el-input v-model="form.annexregistform" placeholder="请输入登记表照片路径 多个用;分开" />
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"><el-form-item label="费用类别 见字典sys_SubjectType" prop="applytype">
              <el-select v-model="form.applytype" placeholder="请选择费用类别 见字典sys_SubjectType">
                <el-option label="请选择字典生成" value="" />
              </el-select>
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="项目ID" prop="itemid">
              <el-input v-model="form.itemid" placeholder="请输入项目ID" />
            </el-form-item></el-col>
          <el-col :span="5"> <el-form-item label="项目名称" prop="itemname">
              <el-input v-model="form.itemname" placeholder="请输入项目名称" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="项目类别" prop="itemtype">
              <el-select v-model="form.itemtype" placeholder="请选择项目类别">
                <el-option label="请选择字典生成" value="" />
              </el-select>
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"><el-form-item label="申请金额" prop="amount">
              <el-input v-model="form.amount" placeholder="请输入申请金额" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="预支金额" prop="prepaidamount">
              <el-input v-model="form.prepaidamount" placeholder="请输入预支金额" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="发票张数" prop="invoicecount">
              <el-input v-model="form.invoicecount" placeholder="请输入发票张数" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="附件张数" prop="attachcount">
              <el-input v-model="form.attachcount" placeholder="请输入附件张数" />
            </el-form-item></el-col>
        </el-row>
        <el-row>
          <el-col :span="5"><el-form-item label="备注" prop="remark">
              <el-input v-model="form.remark" placeholder="请输入备注" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="记录状态">
              <el-radio-group v-model="form.recordstatus">
                <el-radio label="1">请选择字典生成</el-radio>
              </el-radio-group>
            </el-form-item></el-col>
          <el-col :span="5"> <el-form-item label="上传标志" prop="uploadflag">
              <el-input v-model="form.uploadflag" placeholder="请输入上传标志" />
            </el-form-item></el-col>
          <el-col :span="5"><el-form-item label="上传时间" prop="uploadtime">
              <el-date-picker clearable size="small" v-model="form.uploadtime" type="date" value-format="yyyy-MM-dd"
                placeholder="选择上传时间">
              </el-date-picker>
            </el-form-item></el-col>
        </el-row>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -434,7 +339,7 @@
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map(item => item.id)
      this.single = selection.length!==1
      this.single = selection.length !== 1
      this.multiple = !selection.length
    },
    /** 新增按钮操作 */
@@ -476,12 +381,12 @@
    /** 删除按钮操作 */
    handleDelete(row) {
      const ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除费用申请明细编号为"' + ids + '"的数据项?').then(function() {
      this.$modal.confirm('是否确认删除费用申请明细编号为"' + ids + '"的数据项?').then(function () {
        return delFunddetail(ids);
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");
      }).catch(() => {});
      }).catch(() => { });
    },
    /** 导出按钮操作 */
    handleExport() {
@@ -492,7 +397,7 @@
      }).then(response => {
        this.$download.name(response.msg);
        this.exportLoading = false;
      }).catch(() => {});
      }).catch(() => { });
    }
  }
};