ruoyi-ui/src/router/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-ui/src/views/travel/Info.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
ruoyi-ui/src/views/travel/index.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
ruoyi-ui/src/router/index.js
@@ -358,7 +358,7 @@ path: 'edit/:id(\\d+)', component: () => import('@/views/travel/edit'), name: 'edit', meta: { title: '编辑'} meta: { title: '编辑',activeMenu: '/geren/Ztravel'} } ] }, @@ -366,15 +366,14 @@ { path: '/self/travel', component: Layout, permissions: ['person:travel:info'], hidden: true, permissions: ['person:travel:info'], children: [ { path: 'show/:id(\\d+)', path: 'Info/:id', component: () => import('@/views/travel/Info'), name: 'show', meta: { title: '查看详情'} meta: { title: '查看详情',activeMenu: '/geren/Ztravel'} } ] }, ruoyi-ui/src/views/travel/Info.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"> <el-form-item label="时间" > <el-date-picker v-model="dateRange" @@ -28,7 +28,7 @@ <el-button size="mini" @click="resetQuery" style=" width: 65px;height: 32px; background: #FFDDE3; border-radius:6px 6px 6px 6px;opacity: 1;">重置</el-button> </el-form-item> </el-form> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button @@ -40,7 +40,7 @@ v-hasPermi="['system:role:add']" >新增</el-button> </el-col> <el-col :span="1.5"> <el-button type="danger" @@ -82,34 +82,31 @@ <el-button size="mini" type="primary" plain icon="el-icon-plus" >导入</el-button> </el-upload> </el-col> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> </el-row> <!-- 序号、基金/台账、时间、收入/支出、用途、使用人、现金/自动扣划、余额、电子文件、备注 操作--> <!-- 这里有个familyList数组 是在data()中定义的 --> <el-table v-loading="loading" :data="travelpriceList" @selection-change="handleSelectionChange" @row-click="handleCheck" :row-class-name="tableRowClassName" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;"> <el-table v-loading="loading" :data="travelBase" @selection-change="handleSelectionChange" @row-click="handleCheck" :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 label="起" prop="startTime" sortable width="100" align="center"> <template slot-scope="scope">{{scope.row.startTime? scope.row.startTime: '————'}}</template> </el-table-column> <el-table-column label="止" prop="endTime" sortable width="100" align="center"> <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="totalCost" sortable width="100" /> <el-table-column label="餐费" prop="eat" sortable width="100" /> <el-table-column label="住宿" prop="stay" sortable width="100" /> <el-table-column label="交通" prop="traffic" sortable width="100" /> <el-table-column label="门票" prop="entrance" sortable width="100" /> <el-table-column label="购物" prop="shopping" sortable width="100" /> <el-table-column label="时间" prop="address" sortable width="100" /> <el-table-column label="地点" prop="address" sortable width="100" /> <el-table-column label="人物" prop="people" sortable width="100" /> <el-table-column label="标题" prop="title" sortable width="100" /> <el-table-column label="旅期" prop="travel_period" sortable width="100" /> <el-table-column label="持证旅游" prop="certificate" sortable width="100" /> <el-table-column label="费用" prop="total_price" sortable width="100" /> <el-table-column label="公费/自费" prop="self" sortable width="100" /> <el-table-column label="电子文件" prop="remark" sortable width="100" /> <el-table-column label="备注" prop="remark" sortable width="100" /> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope" v-if="scope.row.roleId !== 1"> <el-button @@ -129,18 +126,14 @@ <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 size="mini" type="text" @click="handleShow(scope.row)" >查看明细</el-button> </template> </el-table-column> </el-table> <el-dialog :title="title" :visible.sync="openDataScope" width="1000px" append-to-body> <el-table v-loading="loading" :data="travelpriceList[detailList]" @selection-change="handleSelectionChange" @row-click="handleCheck" :row-class-name="tableRowClassName" > <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"/> @@ -171,9 +164,9 @@ v-hasPermi="['system:role:remove']" >删除</el-button> </template> </el-table-column> </el-table-column> </el-table> <pagination v-show="total>0" @@ -181,12 +174,12 @@ :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" /> </el-dialog> <pagination v-show="total>0" :total="total" @@ -195,7 +188,7 @@ @pagination="getList" style="background: #FEF7FC;" /> <!-- 添加或修改资产信息配置对话框 --> <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> @@ -203,7 +196,7 @@ <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 v-model='formDat.happenTime' @@ -236,7 +229,7 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formDat.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" ></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload action="#" @@ -262,7 +255,7 @@ > <i class="el-icon-zoom-in"></i> </span> <span v-if="!disabled" class="el-upload-list__item-delete" @@ -271,8 +264,8 @@ <i class="el-icon-delete"></i> </span> </span> </div> </el-upload> <h4 class="form-header">其他附件 </h4> @@ -281,7 +274,7 @@ :file-list="fileListOther" class="upload-demo" multiple :on-remove="handleRemove" :http-request="requestUpload" :show-file-list="true" @@ -292,33 +285,33 @@ </div> </template> </el-upload> </el-form> <h4 class="form-header"> </h4> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitDataScope">确 定</el-button> <el-button @click="cancelData">取 消</el-button> </div> </el-dialog> <!-- 分配角色数据权限对话框 --> <el-dialog :title="title" :visible.sync="openDataScope" width="500px" append-to-body> </el-dialog> </div> </template> <script> import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role"; import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu"; //在system/note/index.js中导入接口函数 --接好了 import {listTravelPrice,enload,getTravelPriceInfo,delTravelPrice, addTravelPrice, uploadPic} from "@/api/travel/index"; import {listTravelPrice,listTravelBase,enload,getTravelPriceInfo,delTravelPrice, addTravelPrice, uploadPic} from "@/api/travel/index"; export default { name: "Role", dicts: ['sys_normal_disable'], @@ -339,7 +332,7 @@ // 总条数 total: 0, // 家大事记表格数据 travelpriceList: [], travelBase: [], // 弹出层标题 title: "", // 是否显示弹出层 @@ -357,7 +350,7 @@ fileList:[ ], fileListOther:[ ], dsb:true, btn:false, @@ -382,7 +375,7 @@ useFor:undefined, usePeople:undefined, createTime:undefined, fid:undefined }, // 表单参数 form: {}, @@ -397,7 +390,7 @@ message: '请输入使用人', trigger: 'blur' }], useFor: [{ required: true, message: '请输入用途', @@ -451,11 +444,12 @@ }; }, created() { this.getList(); const id = this.$route.params && this.$route.params.id; this.getList(id); }, methods: { //基金/台账的选择 getSrc1(type) { if (type === 0) { @@ -464,7 +458,7 @@ return '台账' } }, getSrc2(kind) { if (kind == 0) { return '现金' @@ -472,13 +466,13 @@ return '自动扣划' } }, // 取消按钮 cancelData() { this.open = false; this.reset(); }, //隔行变色 tableRowClassName({ row, rowIndex }) { if (rowIndex % 2 == 0) { @@ -487,23 +481,23 @@ return "statistics-warning-row"; } }, /** 查询角色列表 */ //列表显示家大事记 getList() { getList(fid) { this.loading = true; this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0] this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1] // console.log(this.queryParams) 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) // listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => { listTravelPrice(this.queryParams).then(response => { listTravelBase(this.queryParams).then(response => { // alert(123) // console.log(response.data) this.travelpriceList = response.data.data; this.travelBase = response.data.data; console.log(this.travelBase) this.total = response.data.total; this.loading = false; } @@ -572,15 +566,15 @@ this.single = selection.length!=1 this.multiple = !selection.length }, /** 新增按钮操作 */ handleAdd() { this.reset(); this.open = true; this.title = "添加家庭收支台账"; }, /** 查看详细信息 */ handleCheck(row){ const id = row.id; @@ -590,7 +584,7 @@ handleUpdate(row) { const id = row.id; let jd = true this.$router.push({ path:"/familymodel/economy/economyInfo/" + id, query:{ @@ -598,15 +592,15 @@ } }); }, handlePictureCardPreview(file) { this.dialogImageUrl = file.url; this.dialogVisible = true; }, /** 提交按钮(数据权限) */ submitDataScope: function() { let ul = this.fileList.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") @@ -616,7 +610,7 @@ this.formDat.url = ul+","+uls this.$refs["elForm"].validate(valid => { if (valid) { addEconomy(this.formDat).then(response => { this.$modal.msgSuccess("新增成功"); this.open = false; @@ -631,22 +625,22 @@ var formData = new FormData(); formData.append('uploadFile', file); let _this = this uploadPic(formData).then(response => { let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length) if(_this.fot.includes(pth) === true) { _this.fileList.push({name:response.data.fileName, "url":response.data.url}) } else{ _this.fileListOther.push({name:response.data.fileName, url:response.data.url}) } }) }, /** 删除按钮操作 */ handleDelete(row) { @@ -661,7 +655,7 @@ /** 导出按钮操作 */ handleExport() { const Ids = this.ids; if(Ids.length==0) { this.download('/zfEconomy/export', { @@ -676,7 +670,7 @@ , handleExportTemplate(){ this.download('/zfEconomy/model', { }, `zfEconomy_${new Date().getTime()}.xlsx`) }, /** 导入操作*/ @@ -689,15 +683,15 @@ enload(formData).then(response => { _this.getList(); Message({ message: "导入成功", type: 'warning' }) }).catch(err) { Message({ message: "导入失败", type: 'error' }) } } }, // 弹窗 handleShow(scope){ @@ -707,15 +701,14 @@ }; </script> <style> .el-table__row.statistics-warning-row { background: #E0EEFE; } .el-table__row.statistics-warning-row1 { background: #FFEFF2; } </style> 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"> <el-form-item label="时间" > <el-date-picker v-model="dateRange" @@ -28,7 +28,7 @@ <el-button size="mini" @click="resetQuery" style=" width: 65px;height: 32px; background: #FFDDE3; border-radius:6px 6px 6px 6px;opacity: 1;">重置</el-button> </el-form-item> </el-form> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button @@ -40,7 +40,7 @@ v-hasPermi="['system:role:add']" >新增</el-button> </el-col> <el-col :span="1.5"> <el-button type="danger" @@ -82,7 +82,7 @@ <el-button size="mini" type="primary" plain icon="el-icon-plus" >导入</el-button> </el-upload> </el-col> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> @@ -92,7 +92,7 @@ <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 label="起" prop="startTime" sortable width="100" align="center"> <template slot-scope="scope">{{scope.row.startTime? scope.row.startTime: '————'}}</template> </el-table-column> @@ -101,7 +101,7 @@ </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="totalCost" sortable width="100" /> <el-table-column label="餐费" prop="eat" sortable width="100" /> <el-table-column label="住宿" prop="stay" sortable width="100" /> @@ -109,7 +109,7 @@ <el-table-column label="门票" prop="entrance" sortable width="100" /> <el-table-column label="购物" prop="shopping" sortable width="100" /> <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope" v-if="scope.row.roleId !== 1"> <el-button @@ -135,7 +135,7 @@ <el-dialog :title="title" :visible.sync="openDataScope" width="1500px" append-to-body > <div style="background-color: #FEF7FC;"> <el-table v-loading="loading" :data="travelpriceList[detailList]" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" > <el-table v-loading="loading" :data="detailList" @selection-change="handleSelectionChange" :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"> @@ -165,7 +165,7 @@ v-hasPermi="['system:role:remove']" >删除</el-button> </template> </el-table-column> </el-table-column> </el-table> <pagination v-show="total>0" @@ -178,7 +178,7 @@ </div> </el-dialog> <pagination v-show="total>0" :total="total" @@ -187,7 +187,7 @@ @pagination="getList" style="background: #FEF7FC;" /> <!-- 添加或修改资产信息配置对话框 --> <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> @@ -195,7 +195,7 @@ <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 v-model='formDat.happenTime' @@ -228,7 +228,7 @@ <el-form-item label="备注" prop="remark"> <el-input v-model="formDat.remark" placeholder="请输入备注" clearable :style="{width: '100%'}" ></el-input> </el-form-item> <h4 class="form-header">相关图片 </h4> <el-upload action="#" @@ -254,7 +254,7 @@ > <i class="el-icon-zoom-in"></i> </span> <span v-if="!disabled" class="el-upload-list__item-delete" @@ -263,8 +263,8 @@ <i class="el-icon-delete"></i> </span> </span> </div> </el-upload> <h4 class="form-header">其他附件 </h4> @@ -273,7 +273,7 @@ :file-list="fileListOther" class="upload-demo" multiple :on-remove="handleRemove" :http-request="requestUpload" :show-file-list="true" @@ -284,29 +284,29 @@ </div> </template> </el-upload> </el-form> <h4 class="form-header"> </h4> <div slot="footer" class="dialog-footer"> <el-button type="primary" @click="submitDataScope">确 定</el-button> <el-button @click="cancelData">取 消</el-button> </div> </el-dialog> </div> </template> <script> import { listRole, getRole, delRole, addRole, updateRole, dataScope, changeRoleStatus, deptTreeSelect } from "@/api/system/role"; import { treeselect as menuTreeselect, roleMenuTreeselect } from "@/api/system/menu"; //在system/note/index.js中导入接口函数 --接好了 import {listTravelPrice,enload,delTravelPrice, addTravelPrice, uploadPic} from "@/api/travel/index"; export default { name: "Role", dicts: ['sys_normal_disable'], @@ -346,7 +346,7 @@ fileList:[ ], fileListOther:[ ], dsb:true, btn:false, @@ -372,7 +372,7 @@ useFor:undefined, usePeople:undefined, createTime:undefined, }, // 表单参数 form: {}, @@ -387,7 +387,7 @@ message: '请输入使用人', trigger: 'blur' }], useFor: [{ required: true, message: '请输入用途', @@ -442,10 +442,10 @@ }, created() { this.getList(); }, methods: { //基金/台账的选择 getSrc1(type) { if (type === 0) { @@ -454,7 +454,7 @@ return '台账' } }, getSrc2(kind) { if (kind == 0) { return '现金' @@ -462,13 +462,13 @@ return '自动扣划' } }, // 取消按钮 cancelData() { this.open = false; this.reset(); }, //隔行变色 tableRowClassName({ row, rowIndex }) { if (rowIndex % 2 == 0) { @@ -477,23 +477,23 @@ return "statistics-warning-row"; } }, /** 查询角色列表 */ //列表显示家大事记 getList() { this.loading = true; this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0] this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1] // console.log(this.queryParams) // listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => { listTravelPrice(this.queryParams).then(response => { // alert(123) // console.log(response.data) this.travelpriceList = response.data.data; console.log(this.travelpriceList[0]) this.total = response.data.total; this.loading = false; } @@ -562,49 +562,54 @@ this.single = selection.length!=1 this.multiple = !selection.length }, /** 新增按钮操作 */ handleAdd() { this.reset(); this.open = true; this.title = "添加家庭收支台账"; }, // 弹窗 handleShow(row){ const id = row.id; this.openDataScope = true this.getList() // this.getList() //alert(123) this.detailList = row.detailList // alert(row.index) this.title = "展示详情"; }, /** 查看详细信息 */ handleCheck(row){ const id = row.id; // alert(id) // alert(row.fee_id) this.$router.push("/self/travel/Info/" + id); }, /** 修改按钮操作 */ handleUpdate(row) { const id = row.id; let jd = true this.$router.push({ path:"/self/travel/Info/" + id, path:"/self/travel/edit/" + id, query:{ detail:jd } }); }, handlePictureCardPreview(file) { this.dialogImageUrl = file.url; this.dialogVisible = true; }, /** 提交按钮(数据权限) */ submitDataScope: function() { let ul = this.fileList.map(function (elem){ return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") }).join(",") @@ -614,7 +619,7 @@ this.formDat.url = ul+","+uls this.$refs["elForm"].validate(valid => { if (valid) { addEconomy(this.formDat).then(response => { this.$modal.msgSuccess("新增成功"); this.open = false; @@ -629,22 +634,22 @@ var formData = new FormData(); formData.append('uploadFile', file); let _this = this uploadPic(formData).then(response => { let pth = response.data.originalFilename.substr(response.data.originalFilename.length-4, response.data.originalFilename.length) if(_this.fot.includes(pth) === true) { _this.fileList.push({name:response.data.fileName, "url":response.data.url}) } else{ _this.fileListOther.push({name:response.data.fileName, url:response.data.url}) } }) }, /** 删除按钮操作 */ handleDelete(row) { @@ -659,7 +664,7 @@ /** 导出按钮操作 */ handleExport() { const Ids = this.ids; if(Ids.length==0) { this.download('/zfEconomy/export', { @@ -674,7 +679,7 @@ , handleExportTemplate(){ this.download('/zfEconomy/model', { }, `zfEconomy_${new Date().getTime()}.xlsx`) }, /** 导入操作*/ @@ -687,27 +692,26 @@ enload(formData).then(response => { _this.getList(); Message({ message: "导入成功", type: 'warning' }) }).catch(err) { Message({ message: "导入失败", type: 'error' }) } } }, }; </script> <style> .el-table__row.statistics-warning-row { background: #E0EEFE; } .el-table__row.statistics-warning-row1 { background: #FFEFF2; } </style>