11
WXL
2024-08-14 0ac2d43fce4d74f6eea5a51a2e16af4e6a536c7c
src/views/project/fundcheck/officeExpenseCheck/index.vue
@@ -8,42 +8,37 @@
      label-width="120px"
    >
      <el-row align="left">
        <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="申请结束日期"
        <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="5">
          <el-form-item
            label-width="120px"
            label="预审状态"
            prop="checkstatus"
            style="float: left"
          >
            <el-select
              v-model="queryParams.checkstatus"
              placeholder="请选择"
              style="width: 100%"
            >
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col :span="5">
          <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="APPLICANT" style="float: left">
            <el-input
              v-model="queryParams.APPLICANT"
              placeholder="请输入申请人姓名"
              clearable
              size="small"
              @keyup.enter.native="flowconclusion"
            />
              <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">
@@ -63,13 +58,47 @@
            </el-select>
          </el-form-item>
        </el-col>
        <!-- <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-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="flowconclusion"
            />
          </el-form-item>
        </el-col>
      </el-row>
      <el-row>
        <el-col :span="4">
        <el-col :span="5">
          <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="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="flowconclusion"
            >
            </el-date-picker>
          </el-form-item>
        </el-col>
        <el-col :span="6">
          <div style="margin-bottom: 15px;">
            <el-button
              type="primary"
@@ -93,7 +122,7 @@
          :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"
@@ -102,22 +131,23 @@
            </template>
          </el-table-column>
           -->
          <el-table-column
            label="报销单号"
            align="center"
            prop="bh"
            width="150px"
          />
          <el-table-column
            label="申请日期"
            width="180"
            align="center"
            prop="createTime"
            prop="applyTime"
          >
            <template slot-scope="scope">
              <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span>
              <span>{{ parseTime(scope.row.applyTime, "{y}-{m}-{d}") }}</span>
            </template>
          </el-table-column>
          <el-table-column
            label="经办人"
            align="center"
            prop="username"
            width="150px"
          />
          <el-table-column
            label="申请金额"
            align="center"
@@ -125,15 +155,9 @@
            width="200px"
          />
          <el-table-column
            label="所属组别"
            label="经办人"
            align="center"
            prop="deptmentname"
            width="200px"
          />
          <el-table-column
            label="组长"
            align="center"
            prop="managername"
            prop="username"
            width="150px"
          />
          <!--<el-table-column label="捐献编号" align="center" prop="donorno" />-->
@@ -149,11 +173,18 @@
          <el-table-column label="财务审核" align="center" prop="financechecher" width="140" />
          -->
          <el-table-column
            label="捐献者"
            label="申请材料状态"
            width="140"
            align="center"
            prop="donorname"
            width="150px"
          />
            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"
@@ -167,6 +198,24 @@
              />
            </template>
          </el-table-column>
          <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="donorname"
            width="150px"
          />
          <el-table-column label="备注" align="center" prop="remark" />
          <el-table-column
            label="操作"
@@ -184,6 +233,7 @@
                @click="handleDetail(scope.row)"
                >详情</el-button
              >
              <el-button
                v-if="scope.row.checkFlag == 1"
                size="mini"
@@ -198,9 +248,9 @@
                type="text"
                icon="el-icon-download"
                @click="totaldayin(scope.row.id)"
                v-hasPermi="['project:donateconsolationfund:download']"
                >下载</el-button
              >
              <!-- v-hasPermi="['project:donateconsolationfund:download']" -->
              <!-- 新增审核页面 -->
              <!-- <el-button
@@ -324,12 +374,12 @@
              />
            </el-form-item>
          </el-col>
          <!--
          <!--
          <el-col :span="8">
            <el-form-item label="捐献编号" prop="donorno">
              <el-input disabled v-model="form.donorno" placeholder="请输入捐献编号" clearable />
            </el-form-item>
          </el-col>
          </el-col>
          <el-col :span="8">
            <el-form-item label="联系电话" prop="phone">
              <el-input v-model="form.phone" placeholder="请输入申请者的联系方式" clearable />
@@ -872,6 +922,7 @@
import OrgSelecter from "@/views/project/components/orgselect";
import { getUserProfile } from "@/api/system/user";
import { getToken } from "@/utils/auth";
import { setItem, grtItem, removeItem } from "@/utils/storage.js";
export default {
  components: {
@@ -890,7 +941,8 @@
    "sys_fund_type",
    "sys_finsubject",
    "sys_financeitemtype",
    "sys_consolationfundlevel"
    "sys_consolationfundlevel",
    "sys_stage_type"
  ],
  data() {
    return {
@@ -965,6 +1017,20 @@
          label: "全部"
        }
      ],
      checkmaterials: [
        {
          value: 1,
          label: "材料待审核"
        },
        {
          value: 2,
          label: "审查通过等待邮寄纸质材料"
        },
        {
          value: 3,
          label: "已收到纸质材料"
        }
      ],
      // 查询参数
      queryParams: {
        pageNum: 1,
@@ -974,6 +1040,7 @@
        APPLICATIONENDTIME: null,
        CHECKFLAG: 1,
        APPLYTYPE: 4,
        money: null
      },
      // 表单参数
@@ -1061,6 +1128,11 @@
  },
  mounted() {
    if (grtItem("officeExpenseCheck")) {
      this.queryParams = grtItem("officeExpenseCheck");
      this.queryParams.APPLICATIONBEGTIME = "";
      this.queryParams.APPLICATIONENDTIME = "";
    }
    this.selectReporters();
    this.getlistOrganization();
    //his.getlistUser();
@@ -1077,6 +1149,8 @@
      // this.queryParams.params = {};
      console.log("this.queryParams", this.queryParams);
      listbypower(this.queryParams).then(res => {
        removeItem("officeExpenseCheck");
        setItem("officeExpenseCheck", this.queryParams);
        this.loading = false;
        let list = res.rows;
        this.total = res.total;
@@ -1092,9 +1166,17 @@
        fundid: this.newobj.fundid
      };
      checkfund(checkfundobj).then(res => {
        this.reset();
        this.$modal.msgSuccess("审核完成!");
        this.getlistbypower();
        if (res.code == 200) {
          this.reset();
          this.$modal.msgSuccess("审核完成!");
          this.getlistbypower();
        } else {
          if (res.msg) {
            this.$modal.msgError("操作失误");
          } else {
            this.$modal.msgError(res.msg);
          }
        }
      });
    },
    getlistUser() {
@@ -1136,23 +1218,36 @@
    totaldayin(e) {
      // const id =this.row.id
      getdownloadBX(e).then(res => {
        if (res.downloadUrl) {
          var fileUrl = res;
          //获取当前网址
          var urlBase = process.env.VUE_APP_BASE_API;
          var curWWWPath = window.document.location.href;
          var pos = curWWWPath.indexOf(window.document.location.pathname);
          // 创建a标签
          var aEle = document.createElement("a");
          aEle.href =
            curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
          aEle.click();
          this.$alert("下载成功", "提示", {
            confirmButtonText: "确定",
            type: "success"
      getdownloadLW(e).then(res => {
        var fileUrl = res;
        //获取当前网址
        var urlBase = process.env.VUE_APP_BASE_API;
        var curWWWPath = window.document.location.href;
        var pos = curWWWPath.indexOf(window.document.location.pathname);
        // 创建a标签
        var aEle = document.createElement("a");
        aEle.href =
          curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
        console.log(aEle.href);
        // 添加Authorization头部
        fetch(aEle.href, {
          headers: this.headers
        })
          .then(response => {
            // 将文件下载链接作为blob对象进行下载
            return response.blob();
          })
          .then(blob => {
            const url = window.URL.createObjectURL(new Blob([blob]));
            console.log(url);
            const link = document.createElement("a");
            link.href = url;
            const name = fileUrl["downloadName"];
            link.setAttribute("download", name); // 替换file.pdf为实际的文件名
            document.body.appendChild(link);
            link.click();
            link.parentNode.removeChild(link);
          });
        }
      });
    },
@@ -1335,6 +1430,17 @@
        });
      }
    },
    beforehandCheck(row) {
      this.$router.push({
        path: "/finance/applyDetail/",
        query: {
          id: row.id,
          businessType: "4",
          beforehandType: "1",
          operationType: "check"
        }
      });
    },
    /** 审核按钮操作 */
    handleCheck(row) {
      this.$router.push({