11
WXL
2023-09-14 a29e5813ccdb9cab3e65804d4c172e9f00535ada
src/views/project/travelexpenseapply/travelexpensedetail/index.vue
@@ -208,6 +208,16 @@
          </el-col>
          </el-row>
          -->
        <el-row v-if="jurisdiction">
          <!-- <el-alert title="当前为查看状态,不支持修改存储。" type="warning">
          </el-alert> -->
          <el-alert
            title="当前为查看状态,不支持修改存储。"
            type="warning"
            show-icon
          >
          </el-alert>
        </el-row>
        <el-row style="margin-top: 25px; margin-bottom: 5px">
          <el-col :span="20">报销明细</el-col>
        </el-row>
@@ -216,7 +226,7 @@
            :data="rbDetails"
            ref="table"
            border
            max-height="400"
            max-height="800"
            highlight-current-row
            :summary-method="getSummaries"
            show-summary
@@ -227,7 +237,7 @@
              label="序号"
              align="center"
              fixed
              width="65"
              width="88"
            >
              <template slot-scope="scope">
                <el-input v-model="scope.row.orderno" placeholder="序号" />
@@ -413,7 +423,12 @@
                </el-select>
              </template>
            </el-table-column>
            <el-table-column prop="days" label="天数" width="65" align="center">
            <el-table-column
              prop="days"
              label="天数"
              width="100"
              align="center"
            >
              <template slot-scope="scope">
                <el-input
                  v-model="scope.row.days"
@@ -466,7 +481,7 @@
              prop="trafficexpense"
              label="交通费"
              align="center"
              width="80"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -484,7 +499,7 @@
              prop="cityfee"
              label="市内交通费"
              align="center"
              width="100"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -503,7 +518,7 @@
              prop="hotelexpense"
              label="住宿费"
              align="center"
              width="80"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -518,14 +533,14 @@
              </template>
            </el-table-column>
            <el-table-column
            <!-- <el-table-column
              prop="foodexpenses"
              label="餐费报销"
              align="center"
              width="80"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
                <el-input
                  v-model="scope.row.foodexpenses"
                  placeholder="伙食费报销"
                  @blur="
@@ -535,12 +550,12 @@
                  "
                />
              </template>
            </el-table-column>
            </el-table-column> -->
            <el-table-column
              prop="foodallowance"
              label="伙食补助"
              align="center"
              width="80"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -558,7 +573,7 @@
              prop="otherexpense"
              label="公杂费补助"
              align="center"
              width="80"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -577,7 +592,7 @@
              prop="otherfeeamount"
              label="其他费用"
              align="center"
              width="90"
              width="120"
            >
              <template slot-scope="scope">
                <el-input
@@ -926,6 +941,35 @@
      :visible.sync="pdfVisible"
      width="60%"
    >
      <div>
        <el-table :data="tableDatatop" style="width: 100%">
          <el-table-column prop="persontype" label="人员类别" width="130">
          </el-table-column>
          <el-table-column prop="personname" label="费用人员" width="130">
          </el-table-column>
          <el-table-column prop="departure" label="出发地"> </el-table-column>
          <el-table-column prop="destination" label="到达地"> </el-table-column>
          <el-table-column prop="days" label="天数"> </el-table-column>
          <el-table-column prop="traffictype" label="出发交通工具">
          </el-table-column>
          <el-table-column prop="traffictype2" label="返回交通工具">
          </el-table-column>
        </el-table>
        <el-table :data="tableDatatop" style="width: 100%">
          <el-table-column prop="trafficexpense" label="交通费" width="130">
          </el-table-column>
          <el-table-column prop="cityfee" label="市内交通费" width="130">
          </el-table-column>
          <el-table-column prop="hotelexpense" label="住宿费">
          </el-table-column>
          <el-table-column prop="foodallowance" label="伙食补助">
          </el-table-column>
          <el-table-column prop="otherexpense" label="公杂费补助">
          </el-table-column>
          <el-table-column prop="otherfeeamount" label="其他费用">
          </el-table-column>
        </el-table>
      </div>
      <div class="pdfimg">
        <div class="box-pdf">
          <div>
@@ -937,7 +981,6 @@
              :show-file-list="false"
              multiple
              drag
              :limit="20"
              :headers="headers"
              :on-success="
                (response, file, fileList) =>
@@ -946,7 +989,6 @@
              :on-preview="downFile"
              :disabled="operationType == 'detail'"
              :on-error="handleUploadError"
              :on-exceed="handleExceed"
              :on-remove="remove"
              accept="image/*,.pdf"
            >
@@ -967,6 +1009,7 @@
              :data="fileListto"
              @row-click="downFile"
              style="width: 100%"
              height="400"
            >
              <el-table-column
                prop="name"
@@ -990,13 +1033,13 @@
                  <el-button
                    type="primary"
                    size="mini"
                    @click.native.prevent="deletedowfile(scope.row)"
                    @click.native.prevent.stop="deletedowfile(scope.row)"
                    >删除</el-button
                  >
                  <el-button
                    type="primary"
                    size="mini"
                    @click.native.prevent="moveupdowfile(scope.row)"
                    @click.native.prevent.stop="moveupdowfile(scope.row)"
                    >上移</el-button
                  >
                </template>
@@ -1005,7 +1048,7 @@
          </div>
        </div>
        <div v-if="this.previewpdf" class="pdfimgmin">
        <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin">
          <!-- <img :src="pdfimg" /> -->
          <el-image
            style="width: 95%; height: 90%"
@@ -1171,6 +1214,13 @@
        starttime: null,
        endtime: null
      },
      tableDatatop: [
        {
          date: "2016-05-02",
          name: "王小虎",
          address: "上海市普陀区金沙江路 1518 弄"
        }
      ],
      //查询付款
      queryParamsPayee: {
        rbid: null
@@ -1230,6 +1280,7 @@
        flowconclusion: null,
        fundid: null
      },
      jurisdiction: false,
      //保存按钮控制
      idisabled: false
@@ -1326,16 +1377,18 @@
      //获取票据信息位置
      if (response.code == 200) {
        this.form.filename = file.raw.name;
        this.previewpdf = true;
        this.$modal.msgSuccess(response.msg);
        this.fileListto.push({
          name: file.name,
          url: response.fileName
        });
        // this.fileListto.push({
        //   name: file.name,
        //   url: response.url
        // });
        this.pdfimgsrcList.push(
          this.Networkheader + "/prod-api" + response.fileName
        );
        console.log(this.pdfimgsrcList);
        this.pdftitle = "共" + this.pdfimgsrcList.length + "项";
        this.pdfimg = this.Networkheader + "/prod-api" + response.fileName;
        this.rbDetails[this.atpresent].annexfilesList = this.fileListto;
      } else {
        console.log(response.msg);
@@ -1343,19 +1396,24 @@
    },
    // 点击票据
    Filepopup(index, rows, row) {
      this.tableDatatop = [];
      this.pdfimgsrcList = [];
      this.tableDatatop.push(row);
      // console.log(row);
      this.atpresent = index;
      this.pdfVisible = true;
      console.log(this.rbDetails[index]);
      if (this.rbDetails[index].annexfilesList) {
        this.previewpdf = true;
        this.fileListto = this.rbDetails[index].annexfilesList;
        console.log(this.fileListto);
        this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url;
        this.pdfimgsrcList = [];
        this.fileListto.forEach(item => {
          this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url);
        });
        console.log(this.pdfimgsrcList);
        console.log(this.pdfimg);
        this.pdftitle = "共" + this.pdfimgsrcList.length + "项";
      } else {
        this.fileListto = [];
        this.pdfimg = "";
@@ -1365,8 +1423,9 @@
    // 点击已上传文件
    downFile(item) {
      console.log(item);
      this.pdftitle = item.name;
      console.log(item, "点击文件拿item");
      this.pdftitle =
        "共" + this.pdfimgsrcList.length + "项,当前选中" + item.name;
      let name = item.name.split(".");
      if (name[1] == "pdf") {
        this.$modal.msgWarning("当前文件暂不支持预览");
@@ -1376,9 +1435,13 @@
        this.previewpdf = true;
        if (item.url) {
          this.pdfimg = this.Networkheader + "/prod-api" + item.url;
          // this.pdfimgsrcList = [];
          // this.pdfimgsrcList.push(this.pdfimg);
          console.log(this.pdfimg);
          // if (!this.pdfimgsrcList.includes(this.pdfimg)) {
          //   this.pdfimgsrcList.push(this.pdfimg);
          //   console.log("加入");
          // }
          console.log(this.pdfimg, "pdfimg");
          console.log(this.pdfimgsrcList, "imglist");
        } else {
          this.pdfimg = this.Networkheader + "/prod-api" + item.response.url;
        }
@@ -1395,9 +1458,16 @@
    deletedowfile(row) {
      console.log(this.fileListto);
      console.log(row);
      const indexlist = this.getIndexInArray(
        this.pdfimgsrcList,
        this.Networkheader + "/prod-api" + row.url
      );
      console.log(indexlist);
      this.pdfimgsrcList.splice(indexlist, 1);
      const index = this.getIndexInArray(this.fileListto, row);
      this.fileList = this.fileListto.splice(index, 1);
      this.fileListto.splice(index, 1);
      console.log(index);
      console.log(this.pdfimgsrcList);
    },
    // 点击上移
    moveupdowfile(row) {
@@ -1883,6 +1953,7 @@
    handleDetail(ids) {
      this.operationType = "detail";
      this.title = "报销申请详情";
      this.jurisdiction = true;
      this.reset();
      this.open = true;
@@ -2313,6 +2384,8 @@
    //新增一行
    addDetailRow(rowIndex) {
      console.log(rowIndex);
      let rowData = {
        //index: this.rbDetails.length,
        searchAddress: {
@@ -2327,6 +2400,8 @@
        endtime: null,
        destination: null,
        days: null,
        persontype: null,
        personname: null,
        trafficexpense: 0,
        traffictype: null,
        traffictype2: null,
@@ -2350,9 +2425,14 @@
        total: 0,
        orderno: null,
        personname2: null,
        personname: null,
        destination: null
      };
      if (this.rbDetails.length) {
        console.log(this.rbDetails[rowIndex].persontype);
        console.log(this.rbDetails[rowIndex].personname);
        rowData.persontype = this.rbDetails[rowIndex].persontype;
        rowData.personname = this.rbDetails[rowIndex].personname;
      }
      // if (this.Reminderquantity >= 5) {
      //   this.Savereminder = true;
      //   return;
@@ -2525,7 +2605,7 @@
      if (!isNaN(parseFloat(row.otherfeeamount))) {
        totalFee += parseFloat(row.otherfeeamount);
      }
      row.total = totalFee;
      row.total = totalFee.toFixed(2);
      /*
      if (!isNaN(parseFloat(this.rbDetails[rowIndex].trafficexpense))) {
@@ -2728,6 +2808,10 @@
          sums[index] = "合计";
          return;
        }
        if (index === 18) {
          sums[index] = this.form.amountrequested;
          return;
        }
        //去除部分字段计算
        if (columnnames.indexOf(column.property) > -1) {
          return;
@@ -2743,7 +2827,7 @@
              return prev;
            }
          }, 0);
          sums[index] += "";
          sums[index] = sums[index].toFixed(2); // 保留2位小数,解决小数合计列;
        } else {
          sums[index] = "";
        }
@@ -2828,4 +2912,8 @@
  line-height: 36px;
  text-align: center;
}
::v-deep .el-alert__title {
  font-size: 20px;
  line-height: 20px;
}
</style>