11
WXL
2024-01-07 41355b421530e46b4386569bb26bc505c55cce77
src/views/project/fund/performancedetails/index.vue
@@ -6,14 +6,15 @@
      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
        <el-row>
          <el-col :span="5">
            <el-form-item label="申请日期" prop="createTime">
            <el-form-item label="申请日期" prop="applyTime">
              <el-date-picker
                clearable
                style="width: 100%"
                v-model="form.createTime"
                v-model="form.applyTime"
                type="date"
                value-format="yyyy-MM-dd HH:mm:ss"
                placeholder="申请日期"
                disabled="true"
              >
              </el-date-picker>
            </el-form-item>
@@ -107,30 +108,31 @@
          </el-alert>
        </el-row>
        <el-row>
          <el-col :span="3"
            ><div style="margin-bottom: 15px;">
          <el-col :span="3">
            <div style="margin-bottom: 15px;">
              <el-button
                type="success"
                type="primary"
                icon="el-icon-download"
                size="small"
                @click="Batchentry"
                >批量录入</el-button
                >批量录入人员</el-button
              >
            </div></el-col
            </div>
          </el-col>
          <el-col
            :span="3"
            v-if="userprofile.nickName == '陈慕华' && operationType == 'check'"
          >
        </el-row>
        <el-row
          v-if="userprofile.nickName == '陈慕华' && operationType == 'check'"
        >
          <el-col :span="3"
            ><div style="margin-bottom: 15px;">
            <div style="margin-bottom: 15px;">
              <el-button
                type="success"
                icon="el-icon-edit-outline"
                size="small"
                @click="Manualcalculationfn"
                >计算个税</el-button
              >
            </div></el-col
          >
            </div>
          </el-col>
        </el-row>
        <el-row>
          <el-table
@@ -233,7 +235,7 @@
            <el-table-column
              prop="beneficiaryname"
              align="center"
              label="姓名"
              label="绩效人员或单位"
              width="250"
            >
              <template slot-scope="scope">
@@ -428,32 +430,35 @@
    <el-dialog
      :visible.sync="showSelectionDialog"
      :close-on-click-modal="false"
      :title="'个人信息选择'"
      :title="'绩效人员(含所在单位)账号选择'"
      width="500px"
      style="text-align: center"
      v-loading="loading"
    >
      <el-form ref="funddetailForm" :model="funddetailForm">
        <el-row>
          <el-select
            v-model="funddetailForm.userName"
            filterable
            remote
            reserve-keyword
            allow-create
            default-first-option
            placeholder="请输入关键词"
            :remote-method="remoteMethod"
            :loading="loadingperformance"
          >
            <el-option
              v-for="item in optionsperformance"
              :key="item.value"
              :label="item.label"
              :value="item.value"
          <el-form-item label="请输入选择:" prop="unitno" label-width="120px">
            <el-select
              v-model="funddetailForm.userName"
              filterable
              remote
              reserve-keyword
              allow-create
              default-first-option
              placeholder="请输入姓名或单位名称"
              :remote-method="remoteMethod"
              :loading="loadingperformance"
              style="width: 100%"
            >
            </el-option>
          </el-select>
              <el-option
                v-for="item in optionsperformance"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </el-form-item>
        </el-row>
      </el-form>
      <span slot="footer" class="dialog-footer">
@@ -597,7 +602,7 @@
      spocewl: "",
      //费用申请表单title
      title: "",
      Copy: "",
      //申请单类型
      businessType: "0",
      businessName: "",
@@ -641,7 +646,7 @@
        },
        {
          id: 2,
          name: "申请材料通过等待材料"
          name: "审核通过等待邮寄纸质材料"
        },
        {
          id: 3,
@@ -699,9 +704,6 @@
      // 表单校验
      rules: {
        createTime: [
          { required: true, message: "请输入填报日期", trigger: "blur" }
        ],
        reason: [
          { required: true, message: "请输入出差事由", trigger: "blur" }
        ],
@@ -902,9 +904,8 @@
    /** 通过参数获取业务类型 */
    getroute() {
      console.log(11);
      //选择业务类型:1、新增;2、修改;3、查看
      //选择业务类型:1、新增;2、修改;3、复制;4、查看
      this.curId = this.$route.query.id;
      this.Copy = this.$route.query.Copy;
      this.businessType = this.$route.query.businessType;
      this.operationType = this.$route.query.operationType;
      this.beforehandType = this.$route.query.beforehandType;
@@ -920,11 +921,10 @@
        this.handleAdd();
      } else if (this.operationType == "update") {
        this.title = this.businessName + "修改";
        if (this.Copy) {
          this.title = this.businessName + "复制";
        }
        console.log(this.title);
        this.handleUpdate();
      } else if (this.operationType == "copy") {
        this.title = this.businessName + "复制";
        this.handleCopy();
      } else if (this.operationType == "detail") {
        this.title = this.businessName + "查看";
        this.jurisdiction = true;
@@ -963,15 +963,6 @@
        //明细处理
        getownFundDetail(this.curId).then(res => {
          this.rbDetails = res.data;
          if (this.Copy) {
            this.form.createTime = null;
            this.rbDetails.map(item => {
              item.amount = 0;
              item.taxedamount = 0;
            });
            console.log(this.rbDetails);
          }
          if (this.rbDetails.length > 0) {
            for (let m = 0; m < this.rbDetails.length; m++) {
              this.rbDetails[m].itemlist = [];
@@ -999,6 +990,74 @@
        listFundflow(listFundflowparams).then(res => {
          this.fundflowList = res.rows;
        });
      });
    },
    /** 复制按钮操作 */
    handleCopy() {
      this.isopen = 0;
      this.reset();
      getFund(this.curId).then(response => {
        this.form = response.data;
        sessionStorage.removeItem("apiform");
        sessionStorage.setItem("apiform", JSON.stringify(this.form));
        //明细处理
        getownFundDetail(this.curId).then(res => {
          this.rbDetails = res.data;
          if (this.rbDetails.length > 0) {
            for (let m = 0; m < this.rbDetails.length; m++) {
              this.rbDetails[m].itemlist = [];
              this.getRowFeeItems(m, this.rbDetails[m]);
              //获取费用项目的详细信息
              this.rbDetails[m].rowfeeblocks = this.feeBlocks.filter(
                r => r.itemid == this.rbDetails[m].itemid
              );
              //初始化明细信息
              this.rbDetails[m].id = null;
              this.rbDetails[m].fundid = null;
              this.rbDetails[m].amount = 0;
              this.rbDetails[m].taxamount = 0;
              this.rbDetails[m].taxedamount = 0;
            }
            sessionStorage.removeItem("apifunddetail");
            sessionStorage.setItem(
              "apifunddetail",
              JSON.stringify(this.rbDetails)
            );
          } else {
            this.addRow(0);
          }
        });
        //初始化主信息
        this.curId = null;
        this.form.id = null;
        this.form.recordstatus = "-1";
        this.form.checkstatus = null;
        this.form.pretaxcost = 0;
        this.form.istax = null;
        this.form.fundtaxtime = null;
        this.form.createTime = null;
        this.form.updateTime = null;
        this.form.flowlevel = null;
        this.form.backflowlevel = null;
        this.form.financedirector = null;
        this.form.financechecher = null;
        this.form.president = null;
        this.form.finvicepresident = null;
        this.form.busvicepresident = null;
        this.form.zffs = null;
        this.form.riqi = null;
        this.form.bh = null;
        this.form.istax = 0;
        this.form.fundtaxtime = null;
      });
    },
@@ -1122,6 +1181,20 @@
          //查找是否存在登记完成记录
          //判断是否存在上报记录
          this.form.recordstatus = 0;
          var currenttime = new Date();
          this.form.applyTime =
            currenttime.getFullYear() +
            "-" +
            (currenttime.getMonth() + 1) +
            "-" +
            currenttime.getDate() +
            " " +
            currenttime.getHours() +
            ":" +
            currenttime.getMinutes() +
            ":" +
            currenttime.getSeconds();
          if (!this.form.id) {
            this.form.id = this.$route.query.id;
          }
@@ -1294,12 +1367,19 @@
          if (this.form.id != null) {
          } else {
            this.form.recordstatus = -1;
          }
          if (this.Copy) {
            this.form.id = null;
            this.rbDetails.map(item => {
              return (item.id = null);
            });
            var currenttime = new Date();
            this.form.applyTime =
              currenttime.getFullYear() +
              "-" +
              (currenttime.getMonth() + 1) +
              "-" +
              currenttime.getDate() +
              " " +
              currenttime.getHours() +
              ":" +
              currenttime.getMinutes() +
              ":" +
              currenttime.getSeconds();
          }
          sessionStorage.setItem(
@@ -1310,17 +1390,25 @@
          addorupdateFund(this.form).then(response => {
            console.log(response, "保存返参");
            if (response.code === 200) {
              this.$modal.msgSuccess("申请单保存成功!");
              this.$store.dispatch("tagsView/delView", this.$route);
              this.$router.push({
                path: "/finance/performancedetails/",
                query: {
                  id: response.data,
                  businessType: "5",
                  operationType: "update"
                }
              });
              if (this.form.id) {
                this.$modal.msgSuccess("申请单修改成功!");
                this.$router.go(-1);
              } else {
                this.$modal.msgSuccess("申请单保存成功!");
                this.$store.dispatch("tagsView/delView", this.$route);
                this.$router.push({
                  path: "/finance/performancedetails/",
                  query: {
                    id: response.data,
                    businessType: "5",
                    operationType: "update"
                  }
                });
              }
              this.Routinglevel++;
              this.form.id = response.data;
              this.curId = response.data;
              this.handleUpdate();
            } else {
              this.$modal.msgError("申请单保存失败:" + response.msg);
            }
@@ -1976,7 +2064,6 @@
      this.selectionType = showType;
      this.selectionType = this.experthear;
      this.expertfrom = "1";
      console.log(spoce);
      this.funddetailForm.index = spoce.$index;
      this.funddetailForm.beneficiaryno = spoce.row.beneficiaryno;
      this.funddetailForm.beneficiaryname = spoce.row.beneficiaryname;