linwenling
2023-08-01 07613b212320d088235217f1c994c747295df315
旅游修改
2个文件已修改
213 ■■■■■ 已修改文件
ruoyi-ui/src/views/travel/Info.vue 177 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-ui/src/views/travel/index.vue 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-ui/src/views/travel/Info.vue
@@ -1,6 +1,6 @@
<template>
  <div class="app-container" style="opacity: 1;">
    <h2>旅游经历表</h2>
    <h2>每日行程</h2>
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
      <el-form-item label="时间" >
@@ -151,55 +151,6 @@
      </el-table-column>
    </el-table>
    <el-dialog :title="title" :visible.sync="openDataScope" width="1000px"  append-to-body>
      <el-table v-loading="loading" :data="travelpriceList" @selection-change="handleSelectionChange" @row-click="handleCheck" :row-class-name="tableRowClassName" >
        <el-table-column type="selection" width="55"  align="center" />
        <el-table-column  label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="120"/>
        <el-table-column label="时间" prop="happenTime" sortable width="100" align="center">
          <template slot-scope="scope">{{scope.row.happenTime? scope.row.happenTime: '————'}}</template>
        </el-table-column>
        <el-table-column label="内容" prop="content" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="总金额" prop="totalcost" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="餐费" prop="eat" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="住宿" prop="stay" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="交通" prop="traffic" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="门票" prop="entrance" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="购物" prop="shopping" sortable :show-overflow-tooltip="true" width="150" />
        <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
          <template slot-scope="scope" v-if="scope.row.roleId !== 1">
            <el-button
              size="mini"
              type="text"
              icon="el-icon-edit"
              @click="handleUpdate(scope.row)"
              v-hasPermi="['familymodel:property:info']"
            >修改</el-button>
            <el-button
              size="mini"
              type="text"
              icon="el-icon-delete"
              @click="handleDelete(scope.row)"
              v-hasPermi="['system:role: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"
      />
    </el-dialog>
    <pagination
      v-show="total>0"
      :total="total"
@@ -213,9 +164,6 @@
    <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body>
      <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px">
        <el-form-item label="台账" prop="type">
          <el-input v-model="formDat.type" placeholder="请输入内容" clearable :style="{width: '100%'}" ></el-input>
        </el-form-item>
        <el-form-item label="时间" prop="happenTime">
          <el-date-picker
@@ -224,27 +172,41 @@
            placeholder='选择日期'
          ></el-date-picker>
        </el-form-item>
        <el-form-item label="收入/支出" prop="price">
        <el-form-item label="地点" prop="address">
          <el-input v-model="formDat.address" placeholder="请输入地点" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <!-- <el-form-item label="地点" prop="price">
          <el-select v-model="formDat.price" placeholder="请选择收入/支出" clearable :style="{width: '100%'}"  >
            <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value"
            ></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="金额" prop="balance">
          <el-input v-model="formDat.balance" placeholder="请输入余额" clearable :style="{width: '100%'}" >
        </el-form-item> -->
        <el-form-item label="人物" prop="people">
          <el-input v-model="formDat.people" placeholder="请输入人物" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <el-form-item label="用途" prop="useFor">
          <el-input v-model="formDat.useFor" placeholder="请输入用途" clearable :style="{width: '100%'}" >
        <el-form-item label="标题" prop="title">
          <el-input v-model="formDat.title" placeholder="请输入标题" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <el-form-item label="使用人" prop="usePeople">
          <el-input v-model="formDat.usePeople" placeholder="请输入使用人" clearable :style="{width: '100%'}" >
        <el-form-item label="旅期" prop="travelPeriod">
          <el-input v-model="formDat.travelPeriod" placeholder="请输入使用人" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <el-form-item label="支付方式" prop="kind">
          <el-input v-model="formDat.kind" placeholder="请输入支付方式" clearable :style="{width: '100%'}" >
        <el-form-item label="持证旅游" prop="certificate">
          <el-input v-model="formDat.certificate" placeholder="请输入证件" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <el-form-item label="费用" prop="totalPrice">
          <el-input v-model="formDat.totalPrice" placeholder="请输入总共费用" clearable :style="{width: '100%'}" >
          </el-input>
        </el-form-item>
        <el-form-item label="公费/自费" prop="self">
          <el-select v-model="formDat.self" placeholder="请选择自费/公费" clearable :style="{width: '100%'}"  >
            <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label" :value="item.value"
            ></el-option>
          </el-select>
        </el-form-item>
        <el-form-item label="备注" prop="remark">
          <el-input v-model="formDat.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" ></el-input>
@@ -295,7 +257,7 @@
          class="upload-demo"
          multiple
          :on-remove="handleRemoveFile"
          :on-remove="handleRemove"
          :http-request="requestUpload"
          :show-file-list="true"
        >
@@ -330,7 +292,7 @@
//在system/note/index.js中导入接口函数  --接好了
import {listTravelPrice,listTravelBase,enload,getTravelPriceInfo,delTravelPrice, addTravelPrice, uploadPic} from "@/api/travel/index";
import {addTravelBase,listTravelBase,enload,delTravelBase, uploadPic} from "@/api/travel/index";
export default {
  name: "Role",
@@ -375,11 +337,14 @@
      dsb:true,
      btn:false,
      formDat: {
        type: undefined,
        createTime: undefined,
        useFor: undefined,
        usePeople: undefined,
        kind:undefined,
        people: undefined,
        address: undefined,
        happenTime: undefined,
        title: undefined,
        travelPeriod:undefined,
        certificate: undefined,
        totalPrice: undefined,
        self: undefined,
        remark: undefined,
        url: undefined,
      },
@@ -405,51 +370,57 @@
      },
      // 表单校验
      rules: {
        usePeople: [{
        people: [{
          required: true,
          message: '请输入使用人',
          message: '请输入人物',
          trigger: 'blur'
        }],
        useFor: [{
        address: [{
          required: true,
          message: '请输入用途',
          message: '请输入地点',
          trigger: 'blur'
        }],
        type: [{
        title: [{
          required: true,
          message: '请输入台账内容',
          message: '请输入标题',
          trigger: 'blur'
        }],
        balance: [{
        travelPeriod: [{
          required: true,
          message: '请输入金额',
          message: '请输入旅期',
          trigger: 'blur'
        }],
        kind: [{
          // required: true,
          message: '请输入支付方式',
        certificate: [{
          required: true,
          message: '请输入证件',
          trigger: 'blur'
        }],
        createTime: [{
        happenTime: [{
          required: true,
          message: '请选择日期选择',
          trigger: 'change'
        }],
        price: [{
        totalPrice: [{
          required: true,
          message: '请选择事项内容',
          message: '请选择费用',
          trigger: 'blur'
        }],
        self: [{
          required: true,
          message: '请选择公费/自费',
          trigger: 'change'
        }],
      },
      typeOptions: [
        {
          value: '收入',
          label: '收入',
          value: '0',
          label: '自费',
        },
        {
          value: '支出',
          label: '支出',
          value: '1',
          label: '公费',
        }],
      typeOptions1: [
        {
@@ -464,7 +435,9 @@
    };
  },
  created() {
    const id = this.$route.params && this.$route.params.id;
    this.getList(id);
  },
@@ -508,10 +481,11 @@
    getList(fid) {
      this.loading = true;
      this.queryParams.fid = fid
      this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0]
      this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1]
      this.queryParams.fid = fid
      console.log(this.queryParams)
      // console.log(this.queryParams)
      //  listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
      listTravelBase(this.queryParams).then(response => {
          //  alert(123)
@@ -524,13 +498,6 @@
      );
    },
    handleRemove(file) {
      for(let i = 0; i < this.fileList.length; i++)
      {
        if(this.fileList[i].url==file.url)
          this.$delete(this.fileList,i);
      }
    },
    handleRemoveFile(file) {
      for(let i = 0; i < this.fileListOther.length; i++)
      {
        if(this.fileListOther[i].url==file.url)
@@ -598,7 +565,7 @@
    handleAdd() {
      this.reset();
      this.open = true;
      this.title = "添加家庭收支台账";
      this.title = "添加每日行程内容";
    },
@@ -638,19 +605,13 @@
      this.$refs["elForm"].validate(valid => {
        if (valid) {
          addEconomy(this.formDat).then(response => {
          addTravelBase(this.formDat).then(response => {
            this.$modal.msgSuccess("新增成功");
            this.open = false;
            this.getList();
            this.getList(fid);
          });
        }
      });
      // 清空formDat对象的数据
      Object.keys(this.formDat).forEach(key => {
        this.formDat[key] = '';
      });
      this.handleRemove(this.fileList[0]);
      this.handleRemoveFile(this.fileListOther[0]);
    },
    requestUpload(params)
    {
@@ -678,8 +639,8 @@
    /** 删除按钮操作 */
    handleDelete(row) {
      const Ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除序号为"' + Ids + '"的数据项?').then(function() {
        return delEconomy(Ids);
      this.$modal.confirm('是否确认删除所选数据项?').then(function() {
        return delTravelBase(Ids);
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");
ruoyi-ui/src/views/travel/index.vue
@@ -1,7 +1,7 @@
<template>
  <div class="app-container" style="opacity: 1;">
    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch">
      <h1 style="font-size:21px">完美旅途</h1>
      <el-form-item label="时间" prop="startTime">
        <el-date-picker
          v-model="dateRange"
@@ -91,8 +91,10 @@
    <!-- 这里有个familyList数组 是在data()中定义的 -->
    <el-table v-loading="loading" :data="travelpriceList"  @selection-change="handleSelectionChange" @row-click="handleShow" :row-class-name="tableRowClassName" style="background: #FFEFF2;  border-radius: 14px 14px 14px 14px;">
      <el-table-column type="selection" width="55"  align="center" />
      <el-table-column  label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="120"/>
      <el-table-column fixed label="序号" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="40"/>
      <el-table-column label="旅游名称" prop="tableName" sortable width="100" />
      <el-table-column label="标题" prop="title" sortable width="100" />
      <el-table-column label="去向" prop="destination" sortable width="50" />
      <el-table-column label="起" prop="startTime" sortable width="100" align="center">
        <template slot-scope="scope">{{scope.row.startTime? scope.row.startTime: '————'}}</template>
      </el-table-column>
@@ -100,8 +102,9 @@
        <template slot-scope="scope">{{scope.row.endTime? scope.row.endTime: '————'}}</template>
      </el-table-column>
      <el-table-column label="总天数" prop="totalDay" sortable width="100" />
      <el-table-column label="标题" prop="title" sortable width="100" />
      <el-table-column label="旅游性质" prop="property" sortable width="100" />
      <el-table-column label="旅游方式" prop="type" sortable width="100" />
      <el-table-column label="总金额" prop="totalCost" sortable width="100" />
      <el-table-column label="餐费" prop="eat" sortable width="100" />
      <el-table-column label="住宿" prop="stay" sortable width="100" />
@@ -110,7 +113,7 @@
      <el-table-column label="购物" prop="shopping" sortable width="80" />
      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
      <el-table-column label="操作" align="center" sortable width="200" >
        <template slot-scope="scope" v-if="scope.row.roleId !== 1">
          <el-button
@@ -130,7 +133,7 @@
          <el-dropdown size="mini" @command="(command) => handleCommand(command, scope.row)" v-hasPermi="['familymodel:economy:info']">
            <el-button size="mini" type="text" icon="el-icon-d-arrow-right"  @click="handleCheck(scope.row)">查看详情</el-button>
          </el-dropdown>
          <el-button class="button" size="mini" type="text"  @click="handleShow">
          <el-button class="button" size="mini" type="text"  @click="handleShow"  v-hasPermi="['system:role:add']">
            <sapn v-html="'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'"></sapn> </el-button>
        </template>
      </el-table-column>
@@ -260,11 +263,11 @@
          class="upload-demo"
          multiple
          :on-remove="handleRemoveFile"
          :on-remove="handleRemove"
          :http-request="requestUpload"
          :show-file-list="true"
        >
          <el-button type="primary">点击上传</el-button>
          <el-button type="primary">上传</el-button>
          <template #tip>
            <div class="el-upload__tip">
            </div>
@@ -486,13 +489,6 @@
      );
    },
    handleRemove(file) {
      for(let i = 0; i < this.fileList.length; i++)
      {
        if(this.fileList[i].url==file.url)
          this.$delete(this.fileList,i);
      }
    },
    handleRemoveFile(file) {
      for(let i = 0; i < this.fileListOther.length; i++)
      {
        if(this.fileListOther[i].url==file.url)
@@ -621,12 +617,6 @@
          });
        }
      });
      // 清空formDat对象的数据
      Object.keys(this.formDat).forEach(key => {
        this.formDat[key] = '';
      });
      this.handleRemove(this.fileList[0]);
      this.handleRemoveFile(this.fileListOther[0]);
    },
    requestUpload(params)
    {
@@ -654,8 +644,8 @@
    /** 删除按钮操作 */
    handleDelete(row) {
      const Ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除序号为"' + Ids + '"的数据项?').then(function() {
        return delEconomy(Ids);
      this.$modal.confirm('是否确认删除所选数据项?').then(function() {
        return delTravelPrice(Ids);
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");