| | |
| | | export function getById (id) { |
| | | return request.get(`/business/member/detail/${id}`) |
| | | } |
| | | |
| | | export function updateStatus (data) { |
| | | return request.post('/business/member/updateStatus', data) |
| | | } |
| | | export function exportExcel (data) { |
| | | return request.post('/business/member/list/exportExcel', data, { |
| | | download: true, |
| | |
| | | */ |
| | | deleteById (row, childConfirm = true, call) { |
| | | this.__checkApi() |
| | | let message = `确认删除${this.module}吗?` |
| | | let message = `确认删除选择的数据记录吗?` |
| | | if (childConfirm && row.children != null && row.children.length > 0) { |
| | | message = `确认删除${this.module}【${row[this.configData['field.main']]}】及其子${this.module}吗?` |
| | | message = `确认删除选择的数据记录【${row[this.configData['field.main']]}】及其下级子数据吗?` |
| | | } |
| | | this.$dialog.deleteConfirm(message) |
| | | .then(() => { |
| | |
| | | @deleteRow="form.imgurl = ''; imgurl = ''" /> |
| | | </el-form-item> |
| | | <el-form-item label="排序码" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" placeholder="请输入排序码"></el-input> |
| | | <el-input type="number" v-model="form.sortnum" placeholder="请输入排序码"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-switch |
| | | v-model="form.status" |
| | | active-color="#13ce66" |
| | | inactive-color="#ff4949" |
| | | :active-value="1" |
| | | :inactive-value="0" |
| | | :active-value="0" |
| | | :inactive-value="1" |
| | | ></el-switch> |
| | | </el-form-item> |
| | | <el-form-item label="展示位置" prop="position"> |
| | |
| | | <el-form-item label="内容" prop="content" v-if="form.type === 1"> |
| | | <RichEditor :richData="form.content" :styleEditor="styleEditor" @getWangedditor="getWangedditor" :readonly="false"/> |
| | | </el-form-item> |
| | | <el-form-item label="内容" prop="content" v-if="form.type === 2"> |
| | | <el-form-item label="外链地址" prop="content" v-if="form.type === 2"> |
| | | <el-input v-model="form.content" placeholder="请输入内容"></el-input> |
| | | </el-form-item> |
| | | <div class="tip-warn" v-if="form.type === 2"><i class="el-icon-warning"></i>配置小程序外链地址,需要联系微信小程序管理员登录微信小程序后台,配置该外链地址安全域名</div> |
| | | </el-form> |
| | | </GlobalWindow> |
| | | </template> |
| | |
| | | <span class="remote-tip"><p class="tip-warn"><i class="el-icon-warning"></i>根据配送里程预计配送时长并展示在小程序下单页面</p></span> |
| | | </div> |
| | | <el-table :data="timeTableData" border stripe> |
| | | <el-table-column label="订单级别"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.fieldA == 1" >标速达</span> |
| | | <span v-if="row.fieldA == 2" >急速达</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="起送里程(公里)"> |
| | | <template slot-scope="{row}"> |
| | | <el-input v-model="row.startDistance" type="number" placeholder="请输入"></el-input> |
| | |
| | | <GlobalWindow |
| | | :title="title" |
| | | :visible.sync="visible" |
| | | width="900px" |
| | | width="calc(100% - 255px )" |
| | | :withFooter="false" |
| | | > |
| | | <div class="driver-detail"> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div v-show="activeTab === 'business'" class="tab-content"> |
| | | <el-form ref="searchForm" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="订单编号" prop="orderNo"> |
| | | <el-input v-model="searchForm.orderNo" clearable placeholder="请输入订单编号"></el-input> |
| | | <el-form-item label="订单编号" prop="code"> |
| | | <el-input v-model="searchForm.code" style="width: 150px;" clearable placeholder="请输入订单编号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="物品信息" prop="goodsInfo"> |
| | | <el-input v-model="searchForm.goodsInfo" clearable placeholder="请输入物品信息"></el-input> |
| | | <el-input v-model="searchForm.goodsInfo" style="width: 150px;" clearable placeholder="请输入物品信息" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="创建时间" prop="createTime"> |
| | | <el-date-picker type="daterange" v-model="searchForm.createTime" clearable value-format="yyyy-MM-dd" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" @change="handleDateChange" /> |
| | | </el-form-item> |
| | | <el-form-item label="订单状态" prop="orderStatus"> |
| | | <el-select v-model="searchForm.orderStatus" clearable placeholder="请选择订单状态"> |
| | | <el-option label="待取件" :value="1"></el-option> |
| | | <el-option label="配送中" :value="2"></el-option> |
| | | <el-option label="已完成" :value="3"></el-option> |
| | | <el-option label="已取消" :value="4"></el-option> |
| | | <el-form-item label="订单状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable style="width: 150px;" placeholder="请选择订单状态" @change="search"> |
| | | <el-option label="全部" value=""></el-option> |
| | | <el-option label="待支付" :value="0"></el-option> |
| | | <el-option label="待寄存" :value="1"></el-option> |
| | | <el-option label="已寄存" :value="2"></el-option> |
| | | <el-option label="已接单" :value="3"></el-option> |
| | | <el-option label="派送中" :value="4"></el-option> |
| | | <el-option label="已到店/已送达" :value="5"></el-option> |
| | | <el-option label="已完成" :value="7"></el-option> |
| | | <el-option label="已取消" :value="99"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="结算状态" prop="settleStatus"> |
| | | <el-select v-model="searchForm.settleStatus" clearable placeholder="请选择结算状态"> |
| | | <el-option label="未结算" :value="0"></el-option> |
| | | <el-form-item label="结算状态" prop="settlementStatus"> |
| | | <el-select v-model="searchForm.settlementStatus" style="width: 150px;" clearable placeholder="请选择结算状态" @change="search"> |
| | | <el-option label="待结算" :value="0"></el-option> |
| | | <el-option label="已结算" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="创建时间" prop="createTime1"> |
| | | <el-date-picker type="daterange" v-model="searchForm.createTime1" clearable value-format="yyyy-MM-dd" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" @change="handleDateChange" /> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="searchBusiness">搜索</el-button> |
| | | <el-button @click="resetBusiness">重置</el-button> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | <el-button :loading="isWorking.export" @click="exportExcel">导出</el-button> |
| | | </section> |
| | | </el-form> |
| | | |
| | | <!-- |
| | | <div class="statistics"> |
| | | <span>订单数:{{ statistics.orderCount }}</span> |
| | | <span>订单总价:¥{{ (statistics.orderAmount / 100).toFixed(2) }}</span> |
| | | <span>结算总价:¥{{ (statistics.settleAmount / 100).toFixed(2) }}</span> |
| | | </div> |
| | | --> |
| | | |
| | | <el-table :data="businessData.list" stripe> |
| | | <el-table-column prop="orderNo" label="订单编号" min-width="150px"></el-table-column> |
| | | <el-table :data="tableData.list" stripe> |
| | | <el-table-column prop="code" label="订单编号" min-width="160px"> |
| | | <template slot-scope="{row}"> |
| | | <span class="bluestate" @click="$refs.operaOrderDetail.open(row)">{{ row.code }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="goodsInfo" label="物品信息" min-width="120px"></el-table-column> |
| | | <el-table-column prop="type" label="类型" min-width="80px"></el-table-column> |
| | | <el-table-column prop="isUrgent" label="订单级别" min-width="80px"> |
| | | <template slot-scope="{row}"><span v-if="row.type ===1">{{ row.isUrgent === 1?'极速达':'标速达' }}</span></template> |
| | | </el-table-column> |
| | |
| | | </el-table-column> |
| | | <el-table-column prop="payTime" label="支付时间" min-width="150px"> </el-table-column> |
| | | <el-table-column prop="createTime" label="创建时间" min-width="150px"> </el-table-column> |
| | | <el-table-column label="操作" min-width="120" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" v-if="row.status ===2" @click="handleDispatch(row)">手动派单</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleBusinessSizeChange" |
| | | @current-change="handleBusinessPageChange" |
| | | :pagination="businessData.pagination" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | ></pagination> |
| | | </div> |
| | | </div> |
| | | <OperaOrderDetail ref="operaOrderDetail" @success="handlePageChange" /> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import { getById } from '@/api/business/driver' |
| | | import OperaOrderDetail from '@/components/business/OperaOrderDetail' |
| | | |
| | | export default { |
| | | name: 'OperaDriverDetail', |
| | | components: { GlobalWindow, Pagination }, |
| | | extends: BaseTable, |
| | | components: { GlobalWindow, Pagination ,OperaOrderDetail}, |
| | | data () { |
| | | return { |
| | | title: '司机详情', |
| | | visible: false, |
| | | activeTab: 'basic', |
| | | isSearchWorking: false, |
| | | detailInfo: {}, |
| | | searchForm: { |
| | | orderNo: '', |
| | | goodsInfo: '', |
| | | createTime: '', |
| | | createTime1: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | orderStatus: '', |
| | | settleStatus: '' |
| | | settleStatus: '', |
| | | acceptDriver:null |
| | | }, |
| | | statistics: { |
| | | orderCount: 0, |
| | | orderAmount: 0, |
| | | settleAmount: 0 |
| | | }, |
| | | businessData: { |
| | | list: [], |
| | | pagination: { page: 1, size: 10, total: 0 } |
| | | } |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/orderManagement', |
| | | 'field.id': 'id' |
| | | }) |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | open (title, row) { |
| | |
| | | }).catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | }, |
| | | searchBusiness () { |
| | | }, |
| | | resetBusiness () { |
| | | this.searchForm = { |
| | | orderNo: '', |
| | | goodsInfo: '', |
| | | createTime: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | orderStatus: '', |
| | | settleStatus: '' |
| | | } |
| | | this.searchBusiness() |
| | | this.searchForm.acceptDriver = row.id |
| | | this.search() |
| | | }, |
| | | handleDateChange (val) { |
| | | this.searchForm.startTime = val ? val[0] : '' |
| | | this.searchForm.endTime = val ? val[1] : '' |
| | | this.searchForm.createStartTime = val ? val[0] : '' |
| | | this.searchForm.createEndTime = val ? val[1] : '' |
| | | this.search() |
| | | }, |
| | | handleBusinessSizeChange () { |
| | | }, |
| | | handleBusinessPageChange () { |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <el-radio label="1">是</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="图标" prop="iconFull" v-if="form.type === 4"> |
| | | <el-form-item label="图标" prop="icon" v-if="form.type === 4"> |
| | | <UploadImages |
| | | :fileList="form.iconFull ? [{ url: form.iconFull }] : []" |
| | | :uploadData="{ folder: 'category' }" |
| | |
| | | </el-form-item> |
| | | <el-form-item label="所需司机评级" prop="detail" v-if="form.type === 3"> |
| | | <el-select v-model="form.detail" placeholder="请选择司机评级"> |
| | | <el-option label="S" :value="5"></el-option> |
| | | <el-option label="A" :value="4"></el-option> |
| | | <el-option label="B" :value="3"></el-option> |
| | | <el-option label="C" :value="2"></el-option> |
| | | <el-option label="D" :value="1"></el-option> |
| | | <el-option label="S" value="5"></el-option> |
| | | <el-option label="A" value="4"></el-option> |
| | | <el-option label="B" value="3"></el-option> |
| | | <el-option label="C" value="2"></el-option> |
| | | <el-option label="D" value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="是否贵重物品" prop="otherField" v-if="form.type === 3"> |
| | | <el-select v-model="form.detail" placeholder="请选择是否贵重物品"> |
| | | <el-option label="否" value="0"></el-option> |
| | | <el-option label="是" value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="寄存说明" prop="detail" v-if="form.type === 2"> |
| | |
| | | <el-input v-model="form.remark" type="textarea" :rows="3" placeholder="请输入备注说明"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="排序" prop="sortnum"> |
| | | <el-input v-model="form.sortnum" placeholder="请输入排序"></el-input> |
| | | <el-input type="number" v-model="form.sortnum" placeholder="请输入排序"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <div style="display: flex; align-items: center;"> |
| | |
| | | } else if (this.form.type === 3) { |
| | | this.rules = { |
| | | name: [{ required: true, message: '请输入等级名称', trigger: 'blur' }], |
| | | detail: [{ required: true, message: '请选择司机评级', trigger: 'blur' }] |
| | | detail: [{ required: true, message: '请选择司机评级', trigger: 'blur' }], |
| | | otherField: [{ required: true, message: '请选择是否贵重物品', trigger: 'blur' }] |
| | | } |
| | | } else if (this.form.type === 4) { |
| | | this.rules = { |
| | |
| | | </div> |
| | | |
| | | <div class="approval-form" v-if="storeInfo && storeInfo.auditStatus === 0"> |
| | | <el-form ref="approvalForm" :model="approvalForm" :rules="approvalRules"> |
| | | <el-form ref="approvalForm" :model="approvalForm" :rules="approvalForm.auditStatus ==1?approvalRules:approvalRules1"> |
| | | <el-form-item label="审批结果" prop="auditStatus"> |
| | | <el-radio-group v-model="approvalForm.auditStatus" @change="handleAuditStatusChange"> |
| | | <el-radio :label="0">通过</el-radio> |
| | |
| | | { required: true, message: '请输入拒绝原因', trigger: 'blur' } |
| | | ] |
| | | }, |
| | | approvalRules1: { }, |
| | | isWorking: { |
| | | submit: false |
| | | } |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | changeRadio(){ |
| | | this.$refs.approvalForm.clearValidate() |
| | | }, |
| | | open (title, row) { |
| | | this.title = title |
| | | this.approvalForm = { |
| | |
| | | }) |
| | | }, |
| | | handleAuditStatusChange (val) { |
| | | if (val === 1) { |
| | | this.approvalRules.auditRemark = [] |
| | | } else { |
| | | this.approvalRules.auditRemark = [{ required: true, message: '请输入拒绝原因', trigger: 'blur' }] |
| | | } |
| | | this.$refs.approvalForm.clearValidate() |
| | | // if (val === 1) { |
| | | // this.approvalRules.auditRemark = [] |
| | | // } else { |
| | | // this.approvalRules.auditRemark = [{ required: true, message: '请输入拒绝原因', trigger: 'blur' }] |
| | | // } |
| | | }, |
| | | handleSubmit () { |
| | | this.$refs.approvalForm.validate(valid => { |
| | |
| | | laborContractImgs: [{ required: true, message: '请输入有效劳动合同', trigger: 'blur' }], |
| | | socialSecurityImgs: [{ required: true, message: '请输入社保缴纳证明', trigger: 'blur' }], |
| | | storeFrontImgs: [{ required: true, message: '请输入门店门头照', trigger: 'blur' }], |
| | | storeInteriorImgs: [{ required: true, message: '请输入门店内部照片', trigger: 'blur' }], |
| | | otherMaterialImgs: [{ required: true, message: '请输入其它材料', trigger: 'blur' }] |
| | | storeInteriorImgs: [{ required: true, message: '请输入门店内部照片', trigger: 'blur' }] |
| | | // otherMaterialImgs: [{ required: true, message: '请输入其它材料', trigger: 'blur' }] |
| | | }, |
| | | qualificationTab: 'enterprise', |
| | | areaOptions: [], |
| | |
| | | </div> |
| | | |
| | | <div class="approval-section" v-if="storeInfo && storeInfo.auditStatus !== 0"> |
| | | <div class="approval-result" :class="storeInfo.auditStatus === 1 ? 'approval-pass' : 'approval-reject'"> |
| | | <div class="approval-status" v-if="storeInfo.auditStatus === 1"> |
| | | <div class="approval-result" :class="storeInfo.auditStatus === 1||storeInfo.auditStatus === 3 ? 'approval-pass' : 'approval-reject'"> |
| | | <div class="approval-status" v-if="storeInfo.auditStatus === 1||storeInfo.auditStatus === 3"> |
| | | <i class="el-icon-circle-check"></i> |
| | | <span>审核通过</span> |
| | | </div> |
| | |
| | | <i class="el-icon-circle-close"></i> |
| | | <span>审核拒绝</span> |
| | | </div> |
| | | <div class="approval-info" v-if="storeInfo.auditStatus === 1"> |
| | | <span class="info-item">审核时间:{{ storeInfo.auditTime }}</span> |
| | | <span class="info-item">审核人:{{ storeInfo.auditName }}</span> |
| | | <div class="approval-info" v-if="storeInfo.auditStatus === 1||storeInfo.auditStatus === 3"> |
| | | <div class="info-item" v-if="storeInfo.auditRemark">备注:{{ storeInfo.auditRemark||'' }}</div> |
| | | <span class="info-item">审核时间:{{ storeInfo.auditTime || '' }}</span> |
| | | <span class="info-item">审核人:{{ storeInfo.auditName||'' }}</span> |
| | | </div> |
| | | <div class="approval-info" v-else> |
| | | <div class="info-item" v-if="storeInfo.auditRemark">备注:{{ storeInfo.auditRemark }}</div> |
| | | <div class="info-item">审核时间:{{ storeInfo.auditTime }}</div> |
| | | <div class="info-item">审核人:{{ storeInfo.auditName }}</div> |
| | | <div class="info-item" v-if="storeInfo.auditRemark">备注:{{ storeInfo.auditRemark||'' }}</div> |
| | | <div class="info-item">审核时间:{{ storeInfo.auditTime||'' }}</div> |
| | | <div class="info-item">审核人:{{ storeInfo.auditName||'' }}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <div class="qualification-section"> |
| | | <h4 class="section-title">基本信息</h4> |
| | | <div class="info-grid"> |
| | | <div class="info-row" v-if="storeInfo.auditStatus === 1||storeInfo.auditStatus === 3 "> |
| | | <span class="label">入住押金:</span> |
| | | <span class="value yellowstate" >¥{{(( storeInfo.depositAmount || 0)/100).toFixed(2) }}</span> |
| | | <span class="value bluestate" style="color:#269ffc;font-size: 10px;margin-left:10px;padding: 2px 10px;border: 1px solid #269ffc" v-if="storeInfo.auditStatus === 1">待支付</span> |
| | | <span class="value yellowstate" style="color:#67c23a;font-size: 10px;margin-left:10px;padding: 2px 10px ;border: 1px solid #67c23a" v-if="storeInfo.auditStatus === 3">已支付</span> |
| | | </div> |
| | | <div class="info-row"> |
| | | <span class="label">所在省市区:</span> |
| | | <span class="value">{{ storeInfo.provinceName || '' }} {{ storeInfo.cityName || '' }} {{ storeInfo.areaName || '' }}</span> |
| | |
| | | :title="title" |
| | | :withFooter="false" |
| | | :visible.sync="visible" |
| | | width="80%" |
| | | width="calc(100% - 255px )" |
| | | > |
| | | <div class="store-header" v-if="storeInfo"> |
| | | <div class="store-header-left"> |
| | |
| | | |
| | | <el-tabs v-model="activeTab" class="store-tabs"> |
| | | <el-tab-pane label="门店业绩" name="performance"> |
| | | <el-form ref="searchForm" :model="searchForm" inline> |
| | | <el-form-item label="交易号" prop="orderNo"> |
| | | <el-input v-model="searchForm.orderNo" clearable placeholder="请输入交易号"></el-input> |
| | | <el-form ref="searchForm" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="订单编号" prop="code"> |
| | | <el-input v-model="searchForm.code" style="width: 150px;" clearable placeholder="请输入订单编号" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="收支类型" prop="optType"> |
| | | <el-select v-model="searchForm.optType" clearable placeholder="请选择类型"> |
| | | <el-form-item label="物品信息" prop="goodsInfo"> |
| | | <el-input v-model="searchForm.goodsInfo" style="width: 150px;" clearable placeholder="请输入物品信息" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="订单状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable style="width: 150px;" placeholder="请选择订单状态" @change="search"> |
| | | <el-option label="全部" value=""></el-option> |
| | | <el-option label="收入" :value="1"></el-option> |
| | | <el-option label="支出" :value="-1"></el-option> |
| | | <el-option label="待支付" :value="0"></el-option> |
| | | <el-option label="待寄存" :value="1"></el-option> |
| | | <el-option label="已寄存" :value="2"></el-option> |
| | | <el-option label="已接单" :value="3"></el-option> |
| | | <el-option label="派送中" :value="4"></el-option> |
| | | <el-option label="已到店/已送达" :value="5"></el-option> |
| | | <el-option label="已完成" :value="7"></el-option> |
| | | <el-option label="已取消" :value="99"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="收支时间" prop="createTime"> |
| | | <el-date-picker type="daterange" v-model="searchForm.createTime" clearable value-format="yyyy-MM-dd HH:mm:ss" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" /> |
| | | <el-form-item label="结算状态" prop="settlementStatus"> |
| | | <el-select v-model="searchForm.settlementStatus" style="width: 150px;" clearable placeholder="请选择结算状态" @change="search"> |
| | | <el-option label="待结算" :value="0"></el-option> |
| | | <el-option label="已结算" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">查询</el-button> |
| | | <el-form-item label="创建时间" prop="createTime1"> |
| | | <el-date-picker type="daterange" v-model="searchForm.createTime1" clearable value-format="yyyy-MM-dd" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" @change="handleDateChange" /> |
| | | </el-form-item> |
| | | <section style="display: inline-block"> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | | <el-button @click="reset">重置</el-button> |
| | | <el-button :loading="isWorking.export" @click="exportExcel">导出</el-button> |
| | | </section> |
| | | </el-form> |
| | | |
| | | <el-table :data="tableData.list" border stripe v-loading="isWorking.search" class="performance-table"> |
| | | <el-table-column label="收入/支出" min-width="100px"> |
| | | <!-- |
| | | <div class="statistics"> |
| | | <span>订单数:{{ statistics.orderCount }}</span> |
| | | <span>订单总价:¥{{ (statistics.orderAmount / 100).toFixed(2) }}</span> |
| | | <span>结算总价:¥{{ (statistics.settleAmount / 100).toFixed(2) }}</span> |
| | | </div> |
| | | --> |
| | | |
| | | <el-table :data="tableData.list" stripe> |
| | | <el-table-column prop="code" label="订单编号" min-width="160px"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="row.optType === 1 ? 'income' : 'expense'">{{ row.optType === 1 ? '收入' : '支出' }}</span> |
| | | <span class="bluestate" @click="$refs.operaOrderDetail.open(row)">{{ row.code }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="amount" label="金额(元)" min-width="100px"> |
| | | <el-table-column prop="goodsInfo" label="物品信息" min-width="180px" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="isUrgent" label="订单级别" min-width="80px"> |
| | | <template slot-scope="{row}"><span v-if="row.type ===1">{{ row.isUrgent === 1?'极速达':'标速达' }}</span></template> |
| | | </el-table-column> |
| | | <el-table-column label="物品保费(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.declaredFee / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="物品保费(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.declaredFee / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="基础服务费(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.price / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="订单总价(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.totalAmount / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="实付现金(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.payAmount / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="加急费(元)" min-width="120px"> |
| | | <template slot-scope="{row}"><span v-if="row.type ===1 ">¥{{ (row.urgentAmount / 100).toFixed(2) }}</span></template> |
| | | </el-table-column> |
| | | <el-table-column label="退款金额(元)" min-width="120px"> |
| | | <template slot-scope="{row}">¥{{ (row.refundAmount / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="超时金额" min-width="100px"> |
| | | <template slot-scope="{row}">¥{{ (row.overdueAmount / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column label="异常金额" min-width="100px"> |
| | | <template slot-scope="{row}">¥{{ (row.exceptionAmount / 100).toFixed(2) }}</template> |
| | | </el-table-column> |
| | | <el-table-column prop="statusDesc" label="订单状态" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="row.optType === 1 ? 'income' : 'expense'">{{ row.amount }}</span> |
| | | <span :style="{ color: row.status <7 ? '#e6a23c' : (row.status ===7 ? '#67c23a' : 'grey' )}"> |
| | | {{ row.statusDesc }} |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="createTime" label="收支时间" min-width="160px"></el-table-column> |
| | | <el-table-column label="业务类型" min-width="100px"> |
| | | <el-table-column label="结算状态" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.type === 0">完成订单</span> |
| | | <span v-if="row.type === 1">提现支出</span> |
| | | <span v-if="row.type === 2">提现退回</span> |
| | | <span v-if="row.type === 3">平台奖励</span> |
| | | <span :style="{ color: row.settlementStatus === 1 ? '#67c23a' : '#e6a23c' }"> |
| | | {{ row.settlementStatus === 1 ? '已结算' : '未结算' }} |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="orderNo" label="交易号" min-width="180px"></el-table-column> |
| | | <el-table-column label="状态" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="row.vaildStatus === 1 ? 'status-success' : 'status-pending'"> |
| | | {{ row.vaildStatus === 1 ? '已到账' : '提现中' }} |
| | | </span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="payTime" label="支付时间" min-width="150px"> </el-table-column> |
| | | <el-table-column prop="createTime" label="创建时间" min-width="150px"> </el-table-column> |
| | | </el-table> |
| | | <pagination |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handlePageChange" |
| | | :pagination="tableData.pagination" |
| | | ></pagination> |
| | | </el-tab-pane> |
| | | |
| | |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | <OperaOrderDetail ref="operaOrderDetail" @success="handlePageChange" /> |
| | | </GlobalWindow> |
| | | </template> |
| | | |
| | | <script> |
| | | import BaseOpera from '@/components/base/BaseOpera' |
| | | import GlobalWindow from '@/components/common/GlobalWindow' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import { detail } from '@/api/business/shopInfo' |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import OperaOrderDetail from '@/components/business/OperaOrderDetail' |
| | | import { fetchList, exportExcel } from '@/api/business/revenue' |
| | | export default { |
| | | name: 'OperaShopInfoWindow', |
| | | extends: BaseOpera, |
| | | components: { GlobalWindow, Pagination }, |
| | | extends: BaseTable, |
| | | components: { GlobalWindow, Pagination,OperaOrderDetail }, |
| | | data () { |
| | | return { |
| | | activeTab: 'performance', |
| | | storeInfo: {}, |
| | | searchForm: { |
| | | orderNo: '', |
| | | optType: 0, |
| | | createTime: '', |
| | | memberId: '', |
| | | memberType: 2 |
| | | }, |
| | | tableData: { |
| | | list: [], |
| | | pagination: { |
| | | pageIndex: 1, |
| | | pageSize: 10, |
| | | total: 0 |
| | | } |
| | | }, |
| | | isWorking: { |
| | | search: false, |
| | | export: false |
| | | goodsInfo: '', |
| | | createTime1: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | orderStatus: '', |
| | | shopId: null, |
| | | settleStatus: '' |
| | | }, |
| | | defaultAvatar: 'https://cube.elemecdn.com/3/c7/9d47156420e4e9c6e2c1f6d6e6e6e6e6.jpeg' |
| | | } |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | api: '/business/shopInfo', |
| | | api: '/business/orderManagement', |
| | | 'field.id': 'id' |
| | | }) |
| | | }, |
| | |
| | | .then(res => { |
| | | this.storeInfo = res |
| | | this.activeTab = 'performance' |
| | | this.searchForm = { |
| | | orderNo: '', |
| | | optType: '', |
| | | createTime: '', |
| | | memberId: '', |
| | | memberType: 2 |
| | | } |
| | | this.title = title |
| | | this.visible = true |
| | | this.searchForm.shopId = row.id |
| | | this.search() |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | }, |
| | | search () { |
| | | this.isWorking.search = true |
| | | const data = { |
| | | capacity: this.tableData.pagination.pageSize, |
| | | page: this.tableData.pagination.pageIndex, |
| | | model: { |
| | | orderNo: this.searchForm.orderNo, |
| | | optType: this.searchForm.optType, |
| | | startTime: this.searchForm.createTime?.[0] || '', |
| | | endTime: this.searchForm.createTime?.[1] || '', |
| | | memberId: this.searchForm.memberId, |
| | | memberType: this.searchForm.memberType || '' |
| | | } |
| | | } |
| | | fetchList(data) |
| | | .then(res => { |
| | | this.tableData.list = res.list || [] |
| | | this.tableData.pagination.total = res.total || 0 |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking.search = false |
| | | }) |
| | | }, |
| | | reset () { |
| | | this.searchForm = { |
| | | orderNo: '', |
| | | optType: '', |
| | | createTime: '', |
| | | memberId: '', |
| | | memberType: 2 |
| | | } |
| | | this.search() |
| | | }, |
| | | handleSizeChange (pageSize) { |
| | | this.tableData.pagination.pageSize = pageSize |
| | | this.search() |
| | | }, |
| | | handlePageChange (pageIndex) { |
| | | this.tableData.pagination.pageIndex = pageIndex |
| | | this.search() |
| | | }, |
| | | exportExcel () { |
| | | this.isWorking.export = true |
| | | const data = { |
| | | capacity: 999999, |
| | | page: this.tableData.pagination.pageIndex, |
| | | model: { |
| | | orderNo: this.searchForm.orderNo, |
| | | optType: this.searchForm.optType, |
| | | startTime: this.searchForm.createTime?.[0] || '', |
| | | endTime: this.searchForm.createTime?.[1] || '', |
| | | memberId: this.searchForm.memberId, |
| | | memberType: this.searchForm.memberType || '' |
| | | } |
| | | } |
| | | exportExcel(data) |
| | | .then(res => { |
| | | this.download(res) |
| | | this.$tip.apiSuccess('导出成功') |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking.export = false |
| | | }) |
| | | } |
| | | } |
| | |
| | | {{ getStatusText(detailInfo.status) }} |
| | | </span> |
| | | </div> |
| | | <div class="info-grid"> |
| | | <div class="info-grid" v-if="detailInfo.memberType ==2"> |
| | | <div class="info-item"> |
| | | <span class="label">门店名称:</span> |
| | | <span class="value">{{ detailInfo.shopName }}</span> |
| | |
| | | <div class="info-item"> |
| | | <span class="label">门店联系人:</span> |
| | | <span class="value">{{ detailInfo.linkName }}</span> |
| | | </div> |
| | | <div class="info-item"> |
| | | <span class="label">申请时间:</span> |
| | | <span class="value">{{ detailInfo.createTime }}</span> |
| | | </div> |
| | | </div> |
| | | <div class="info-grid" v-if="detailInfo.memberType == 1"> |
| | | <div class="info-item"> |
| | | <span class="label">司机姓名:</span> |
| | | <span class="value">{{ detailInfo.memberName ||''}}</span> |
| | | </div> |
| | | <div class="info-item"> |
| | | <span class="label">司机电话:</span> |
| | | <span class="value">{{ detailInfo.memberTelephone||'' }}</span> |
| | | </div> |
| | | <div class="info-item"> |
| | | <span class="label">申请时间:</span> |
| | |
| | | </div> |
| | | |
| | | <div class="approval-form" v-if="detailInfo.status === 0"> |
| | | <el-form ref="approvalForm" :model="approvalForm" :rules="approvalRules"> |
| | | <el-form ref="approvalForm" :model="approvalForm" :rules="approvalForm.status == 1?approvalRules:approvalRules1" > |
| | | <el-form-item label="审批结果" prop="status"> |
| | | <el-radio-group v-model="approvalForm.status"> |
| | | <el-radio-group v-model="approvalForm.status" @change="changeRadio"> |
| | | <el-radio :label="1">通过</el-radio> |
| | | <el-radio :label="2">驳回</el-radio> |
| | | </el-radio-group> |
| | |
| | | approvalRules: { |
| | | status: [{ required: true, message: '请选择审批结果', trigger: 'change' }] |
| | | }, |
| | | approvalRules1: { |
| | | status: [{ required: true, message: '请选择审批结果', trigger: 'change' }], |
| | | approveRemark: [{ required: true, message: '请输入备注', trigger: 'change' }] |
| | | }, |
| | | isWorking: { |
| | | submit: false |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | changeRadio(){ |
| | | this.$refs.approvalForm.clearValidate() |
| | | }, |
| | | open (title, row) { |
| | | this.title = title |
| | | this.approvalForm.id = row.id |
| | | this.approvalForm.status = 1 |
| | | this.approvalForm.approveRemark = '' |
| | | getById(row.id).then(res => { |
| | | this.detailInfo = { |
| | | status: res.status, |
| | | shopName: res.shopName, |
| | | linkName: res.linkName, |
| | | createTime: res.createTime, |
| | | amount: res.amount, |
| | | bankCardNo: res.bankCardNo, |
| | | aliAccount: res.aliAccount, |
| | | auditLogs: res.auditLogs || [], |
| | | updateUserName: res.updateUserName, |
| | | updateTime: res.updateTime, |
| | | approveRemark: res.approveRemark |
| | | } |
| | | this.detailInfo = res || {} |
| | | this.visible = true |
| | | }).catch(e => { |
| | | this.$tip.apiFailed(e) |
| | |
| | | <div slot="title" class="window__header"> |
| | | <span class="header__btn-back" @click="close"><i class="el-icon-arrow-left"></i></span>{{title}} |
| | | </div> |
| | | <div class="window__body"> |
| | | <div class="window__body" style="padding-left: 30px;"> |
| | | <slot></slot> |
| | | </div> |
| | | <div v-if="withFooter" class="window__footer"> |
| | |
| | | MENU_CONF: { |
| | | // 图片上传 |
| | | uploadImage: { |
| | | server: process.env.VUE_APP_API_PREFIX + '/public/uploadLocal?folder=', |
| | | server: process.env.VUE_APP_API_PREFIX + '/web/public/upload?folder=richeditor', |
| | | fieldName: 'file', |
| | | // 单个文件的最大体积限制,默认为 2M |
| | | maxFileSize: 10 * 1024 * 1024, // 10M |
| | |
| | | // 视频上传 |
| | | uploadVideo: { |
| | | fieldName: 'file', |
| | | server: process.env.VUE_APP_API_PREFIX + '/public/upload?folder=richeditor', |
| | | server: process.env.VUE_APP_API_PREFIX + '/web/public/upload?folder=richeditor', |
| | | // 单个文件的最大体积限制,默认为 10M |
| | | maxFileSize: 50 * 1024 * 1024, // 50M |
| | | // 最多可上传几个文件,默认为 5 |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar"> |
| | | <li><el-button type="primary" @click="$refs.operaDictDataWindow.open('新建字典数据', searchForm.dictId)" icon="el-icon-plus">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete">删除</el-button></li> |
| | | <li><el-button @click="sort('top')" :loading="isWorking.sort" icon="el-icon-sort-up" v-permissions="['system:menu:sort']">上移</el-button></li> |
| | | <li><el-button @click="sort('bottom')" :loading="isWorking.sort" icon="el-icon-sort-down" v-permissions="['system:menu:sort']">下移</el-button></li> |
| | | </ul> |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaDictDataWindow.open('编辑字典数据', dictId, row)" icon="el-icon-edit">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete">删除</el-button> |
| | | <el-button style="color: red;" type="text" @click="deleteById(row)" icon="el-icon-delete">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | import BaseTable from '@/components/base/BaseTable' |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import { listByParentId,updateStatus } from '@/api/business/areas' |
| | | import { listByParentId, updateStatus } from '@/api/business/areas' |
| | | import OperaCityPriceRuleWindow from '@/components/business/OperaCityPriceRuleWindow' |
| | | import OperaAreasWindow from '@/components/business/OperaAreasWindow' |
| | | export default { |
| | |
| | | }, |
| | | created () { |
| | | this.config({ |
| | | module: '省市区信息表', |
| | | module: '省市区信息', |
| | | api: '/business/areas', |
| | | 'field.id': 'id', |
| | | 'field.main': 'id' |
| | |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | deleteById (row) { |
| | | var that = this |
| | | const message = '确认删除选择的数据记录及其下级子数据吗?' |
| | | this.$dialog.deleteConfirm(message) |
| | | .then(() => { |
| | | this.isWorking.delete = true |
| | | this.api.deleteById(row.id) |
| | | .then(() => { |
| | | this.refreshLoadTree(row.parentId) |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking.delete = false |
| | | }) |
| | | }) |
| | | .catch(() => {}) |
| | | }, |
| | | // 页码变更处理 |
| | | handlePageChange (pageIndex) { |
| | | this.isWorking.search = true |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category:query']"> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input> |
| | | <el-form-item label="行李类型" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入行李类型" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="正常" :value="0"></el-option> |
| | | <el-option label="停用" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | |
| | | </el-form> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar"> |
| | | <li><el-button type="primary" @click="$refs.operaGoodsCategoryEditWindow.open('新建物品等级', null, 4)" icon="el-icon-plus">新建</el-button></li> |
| | | <li><el-button type="primary" @click="$refs.operaGoodsCategoryEditWindow.open('新建行李类型', null, 4)" icon="el-icon-plus">新建</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <el-table-column prop="id" label="ID" min-width="80px"></el-table-column> |
| | | <el-table-column prop="name" label="行李类型" min-width="120px"></el-table-column> |
| | | <el-table-column prop="detail" label="是否特大尺寸" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.detail == 1? '是' : '否' }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="remark" label="备注说明" min-width="200px"></el-table-column> |
| | | <el-table-column prop="sortnum" label="排序" min-width="100px"></el-table-column> |
| | | <el-table-column prop="createTime" label="提交时间" min-width="100px"></el-table-column> |
| | |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleEdit(row)">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row.id)">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | return { |
| | | searchForm: { |
| | | name: '', |
| | | status:'', |
| | | type: 4 |
| | | } |
| | | } |
| | |
| | | }, |
| | | methods: { |
| | | handleEdit (row) { |
| | | this.$refs.operaGoodsCategoryEditWindow.open('编辑物品等级', row, 4) |
| | | this.$refs.operaGoodsCategoryEditWindow.open('编辑行李类型', row, 4) |
| | | }, |
| | | handleStatusChange (val, row) { |
| | | updateStatus({ id: row.id, status: val }).then(res => { |
| | |
| | | v-if="row.imgurlFull" |
| | | style="width: 80px; height: 40px" |
| | | :src="row.imgurlFull" |
| | | :preview-src-list="[row.imgurlFull]" |
| | | fit="contain" |
| | | ></el-image> |
| | | <span v-else>-</span> |
| | |
| | | <el-table-column prop="updateTime" label="修改时间" min-width="160px"></el-table-column> |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleEdit(row)">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row.id)">删除</el-button> |
| | | <el-button type="text" @click="$refs.operaBannerEditWindow.open('编辑轮播图', row,searchForm.type)" >编辑</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | :pagination="tableData.pagination" |
| | | ></pagination> |
| | | </template> |
| | | <OperaBannerEditWindow ref="operaBannerEditWindow" @success="search" /> |
| | | <OperaBannerEditWindow ref="operaBannerEditWindow" @success="handlePageChange" /> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | |
| | | import TableLayout from '@/layouts/TableLayout' |
| | | import Pagination from '@/components/common/Pagination' |
| | | import OperaBannerEditWindow from '@/components/business/OperaBannerEditWindow' |
| | | import { updateById, deleteById } from '@/api/business/banner' |
| | | |
| | | export default { |
| | | name: 'BannerList', |
| | | extends: BaseTable, |
| | |
| | | data () { |
| | | return { |
| | | positionOptions: { |
| | | 0: '首页', |
| | | 1: '店铺首页' |
| | | 0: '会员端首页轮播', |
| | | 1: '司机APP引导页' |
| | | }, |
| | | jumpTypeOptions: { |
| | | 0: '无', |
| | | 1: '会员端首页轮播', |
| | | 2: '司机APP引导页' |
| | | 1: '富文本', |
| | | 2: '外链' |
| | | }, |
| | | searchForm: { |
| | | title: '' |
| | |
| | | this.search() |
| | | }, |
| | | methods: { |
| | | loadTableData (resolve) { |
| | | this.isWorking.search = true |
| | | list(this.getTableParams()) |
| | | .then(data => { |
| | | this.tableData.list = data.list || [] |
| | | this.tableData.pagination.total = data.total || 0 |
| | | if (resolve) resolve(data) |
| | | }) |
| | | .catch(e => { |
| | | this.$tip.apiFailed(e, '加载失败') |
| | | }) |
| | | .finally(() => { |
| | | this.isWorking.search = false |
| | | }) |
| | | }, |
| | | handleEdit (row) { |
| | | this.$refs.operaBannerEditWindow.open('编辑轮播图', row) |
| | | }, |
| | | handleStatusChange (val, row) { |
| | | updateStatus({ id: row.id, status: val }).then(res => { |
| | | this.api.updateStatus({ id: row.id, status: val }).then(res => { |
| | | this.$tip.apiSuccess(res || '修改成功') |
| | | }).catch(e => { |
| | | row.status = val === 1 ? 0 : 1 |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('新建品种配置',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaCategoryWindow.open('编辑新建品种配置', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | <el-button type="text"style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('新建货运配置',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaCategoryWindow.open('编辑新建货运配置', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('新建餐标配置',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaCategoryWindow.open('编辑餐标配置', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('新建手续费配置',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaCategoryWindow.open('编辑手续费配置', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('新建分类信息表')" icon="el-icon-plus" v-permissions="['business:category:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaCategoryWindow.open('编辑分类信息表', row)" icon="el-icon-edit" v-permissions="['business:category:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="操作" min-width="100" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleDetail(row)">详情</el-button> |
| | | <el-button type="text" style="color: red;" @click="handleDetail(row)">详情</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | createTime1: '', |
| | | startTime: '', |
| | | endTime: '', |
| | | auditStatus: 1 |
| | | auditStatus: 3 |
| | | } |
| | | } |
| | | }, |
| | |
| | | handleDateChange (val) { |
| | | this.searchForm.startTime = val ? val[0] : '' |
| | | this.searchForm.endTime = val ? val[1] : '' |
| | | this.search() |
| | | }, |
| | | reset () { |
| | | this.searchForm = { |
| | | keyword: '', |
| | | carNo: '', |
| | | status: '', |
| | | sex: '', |
| | | createTime1: '', |
| | | startTime: '', |
| | | endTime: '' |
| | | } |
| | | this.search() |
| | | }, |
| | | handleDetail (row) { |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category:query']"> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input> |
| | | <el-form-item label="物品名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入物品名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="正常" :value="0"></el-option> |
| | | <el-option label="停用" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | |
| | | </el-form> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar"> |
| | | <li><el-button type="primary" @click="$refs.operaGoodsCategoryEditWindow.open('新建物品分类', null, 2)" icon="el-icon-plus">新建</el-button></li> |
| | | <li><el-button type="primary" @click="$refs.operaGoodsCategoryEditWindow.open('新建物品名称', null, 2)" icon="el-icon-plus">新建</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleEdit(row)">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row.id)">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | }, |
| | | methods: { |
| | | handleEdit (row) { |
| | | this.$refs.operaGoodsCategoryEditWindow.open('编辑物品分类', row, 2) |
| | | this.$refs.operaGoodsCategoryEditWindow.open('编辑物品名称', row, 2) |
| | | }, |
| | | handleStatusChange (val, row) { |
| | | updateStatus({ id: row.id, status: val }).then(res => { |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category:query']"> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input> |
| | | <el-form-item label="物品等级" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入物品等级" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="正常" :value="0"></el-option> |
| | | <el-option label="停用" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | |
| | | stripe |
| | | > |
| | | <el-table-column prop="id" label="ID" min-width="80px"></el-table-column> |
| | | <el-table-column prop="name" label="等级名称" min-width="120px"></el-table-column> |
| | | <el-table-column prop="detail" label="备注说明" min-width="200px"></el-table-column> |
| | | <el-table-column prop="name" label="物品等级" min-width="120px"></el-table-column> |
| | | <el-table-column prop="detail" label="所需司机等级" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | <span class="value" v-if="row.detail ==5">S</span> |
| | | <span class="value" v-else-if="row.detail ==4">A</span> |
| | | <span class="value" v-else-if="row.detail ==3">B</span> |
| | | <span class="value" v-else-if="row.detail ==2">C</span> |
| | | <span class="value" v-else-if="row.detail ==1">D</span> |
| | | <span class="value" v-else>-</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="otherField" label="是否贵重物品" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | <span class="value" v-if="row.otherField ==1">是</span> |
| | | <span class="value" v-else>否</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="sortnum" label="排序" min-width="100px"></el-table-column> |
| | | <el-table-column prop="createTime" label="提交时间" min-width="100px"></el-table-column> |
| | | <el-table-column label="状态" min-width="80px"> |
| | |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleEdit(row)">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row.id)">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | return { |
| | | searchForm: { |
| | | name: '', |
| | | status:'', |
| | | type: 3 |
| | | } |
| | | } |
| | |
| | | <el-table-column prop="createTime" label="创建时间" min-width="160px"></el-table-column> |
| | | <el-table-column label="状态" min-width="80px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.status === 0 ? '正常' : row.status === 1 ? '停用' : '已注销' }} |
| | | </template> |
| | | <el-switch |
| | | @change="handleStatusChange($event, row)" |
| | | v-model="row.status" |
| | | active-color="#13ce66" |
| | | inactive-color="#ff4949" |
| | | :active-value="0" |
| | | :inactive-value="1" |
| | | ></el-switch> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" min-width="100" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | |
| | | }, |
| | | handleDetail (row) { |
| | | this.$refs.operaMemberDetailWindow.open('会员详情', row) |
| | | }, |
| | | handleStatusChange (val, row) { |
| | | this.api.updateStatus({ id: row.id, status: val }).then(res => { |
| | | this.$tip.apiSuccess(res || '修改成功') |
| | | }).catch(e => { |
| | | row.status = val === 1 ? 0 : 1 |
| | | this.$tip.apiFailed(e) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:memberrevenue:create', 'business:memberrevenue:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaMemberRevenueWindow.open('新建会员收支记录')" icon="el-icon-plus" v-permissions="['business:memberrevenue:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:memberrevenue:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:memberrevenue:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaMemberRevenueWindow.open('编辑会员收支记录', row)" icon="el-icon-edit" v-permissions="['business:memberrevenue:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:memberrevenue:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:memberrevenue:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:orderlog:create', 'business:orderlog:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaOrderLogWindow.open('新建订单操作日志')" icon="el-icon-plus" v-permissions="['business:orderlog:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:orderlog:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:orderlog:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaOrderLogWindow.open('编辑订单操作日志', row)" icon="el-icon-edit" v-permissions="['business:orderlog:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:orderlog:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:orderlog:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:receiveweight:create', 'business:receiveweight:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaReceiveWeightWindow.open('新建接单权重配置表')" icon="el-icon-plus" v-permissions="['business:receiveweight:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:receiveweight:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:receiveweight:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaReceiveWeightWindow.open('编辑接单权重配置表', row)" icon="el-icon-edit" v-permissions="['business:receiveweight:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:receiveweight:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:receiveweight:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | :pagination="tableData.pagination" |
| | | ></pagination> |
| | | </template> |
| | | <OperaWithdrawDetailWindow ref="operaWithdrawDetailWindow" @success="search" /> |
| | | <OperaWithdrawDetailWindow ref="operaWithdrawDetailWindow" @success="handlePageChange" /> |
| | | </TableLayout> |
| | | </template> |
| | | |
| | |
| | | this.searchForm = { |
| | | shopName: '', |
| | | createTime1: '', |
| | | memberType: 2, |
| | | createStartTime: '', |
| | | createEndTime: '', |
| | | auditStatus: '' |
| | |
| | | <el-date-picker type="daterange" v-model="searchForm.createTimeStr" clearable value-format="yyyy-MM-dd" |
| | | range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" @change="handleDateChange" /> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="auditStatus"> |
| | | <el-select v-model="searchForm.auditStatus" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="待审批" :value="0"></el-option> |
| | | <el-option label="审批通过" :value="1"></el-option> |
| | | <el-option label="审批未通过" :value="2"></el-option> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="启用" :value="0"></el-option> |
| | | <el-option label="禁用" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | |
| | | linkPhone: '', |
| | | createTimeStr: '', |
| | | createStartTime: '', |
| | | createEndTime: '', |
| | | auditStatus: null |
| | | status: '', |
| | | createEndTime: '' |
| | | } |
| | | } |
| | | }, |
| | |
| | | linkName: '', |
| | | linkPhone: '', |
| | | createTimeStr: '', |
| | | createStartTime: '', |
| | | status: '', |
| | | auditStatus: null |
| | | createEndTime: '' |
| | | } |
| | | this.search() |
| | | }, |
| | |
| | | <template> |
| | | <TableLayout :permissions="['business:category:query']"> |
| | | <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline> |
| | | <el-form-item label="名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入名称" @keypress.enter.native="search"></el-input> |
| | | <el-form-item label="类型名称" prop="name"> |
| | | <el-input v-model="searchForm.name" clearable placeholder="请输入类型名称" @keypress.enter.native="search"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" clearable placeholder="请选择状态" @change="search"> |
| | | <el-option label="正常" :value="0"></el-option> |
| | | <el-option label="停用" :value="1"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <section> |
| | | <el-button type="primary" @click="search">搜索</el-button> |
| | |
| | | > |
| | | <el-table-column prop="id" label="ID" min-width="80px"></el-table-column> |
| | | <el-table-column prop="name" label="类型名称" min-width="120px"></el-table-column> |
| | | <el-table-column prop="detail" label="通行方式" min-width="200px"> |
| | | <el-table-column prop="detail" label="通行方式" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.otherField === 'driving' ? '机动车' : '非机动车' }} |
| | | {{ row.detail === 'driving' ? '机动车' : '非机动车' }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="otherField" label="上传驾驶证" min-width="120px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.otherField == 1 ? '需要' : '不需要' }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="sortnum" label="分类排序" min-width="100px"></el-table-column> |
| | |
| | | <el-table-column label="操作" min-width="150" fixed="right"> |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="handleEdit(row)">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row.id)">删除</el-button> |
| | | <el-button style="color: red;" type="text" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | return { |
| | | searchForm: { |
| | | name: '', |
| | | status:'', |
| | | type: 1 |
| | | } |
| | | } |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:withdrawalorders:create', 'business:withdrawalorders:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaWithdrawalOrdersWindow.open('新建提现申请记录')" icon="el-icon-plus" v-permissions="['business:withdrawalorders:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:withdrawalorders:delete']">删除</el-button></li> |
| | | <li><el-button tpe="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:withdrawalorders:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaWithdrawalOrdersWindow.open('编辑提现申请记录', row)" icon="el-icon-edit" v-permissions="['business:withdrawalorders:update']">编辑</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:withdrawalorders:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:withdrawalorders:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:dict:create', 'system:dict:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaDictWindow.open('新建字典')" icon="el-icon-plus" v-permissions="['system:dict:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:dict:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:dict:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table :height="tableHeightNew" |
| | | v-loading="isWorking.search" |
| | |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaDictWindow.open('编辑字典', row)" icon="el-icon-edit" v-permissions="['system:dict:update']">编辑</el-button> |
| | | <el-button type="text" @click="$refs.dictDataManagerWindow.open(row.id, row.name)" icon="el-icon-edit" v-permissions="['system:dict:update']">数据管理</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:dict:delete']">删除</el-button> |
| | | <el-button style="color: red;" type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:dict:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:job:log:delete']"> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:log:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:log:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:job:log:delete']">删除</el-button> |
| | | <el-button style="color: red;" type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:job:log:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:job:create', 'system:job:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaJobWindow.open('新建定时任务列表')" icon="el-icon-plus" v-permissions="['system:job:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <template slot-scope="{row}"> |
| | | <el-button v-if="!row.disabled && row.status !== 1" type="text" icon="el-icon-mouse" @click="$refs.triggerJobWindow.open(row)">执行</el-button> |
| | | <el-button type="text" icon="el-icon-edit" v-permissions="['system:job:update']" @click="$refs.operaJobWindow.open('编辑定时任务', row)">编辑</el-button> |
| | | <el-button type="text" icon="el-icon-delete" v-permissions="['system:job:delete']" @click="deleteById(row)">删除</el-button> |
| | | <el-button style="color: red;" type="text" icon="el-icon-delete" v-permissions="['system:job:delete']" @click="deleteById(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:menu:create', 'system:menu:delete', 'system:menu:sort']"> |
| | | <li><el-button type="primary" @click="$refs.operaMenuWindow.open('新建一级菜单')" icon="el-icon-plus" v-permissions="['system:menu:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:menu:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:menu:delete']">删除</el-button></li> |
| | | <li><el-button @click="sort('top')" :loading="isWorking.sort" icon="el-icon-sort-up" v-permissions="['system:menu:sort']">上移</el-button></li> |
| | | <li><el-button @click="sort('bottom')" :loading="isWorking.sort" icon="el-icon-sort-down" v-permissions="['system:menu:sort']">下移</el-button></li> |
| | | </ul> |
| | |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.operaMenuWindow.open('编辑菜单', row)" v-permissions="['system:menu:update']">编辑</el-button> |
| | | <el-button type="text" icon="el-icon-plus" @click="$refs.operaMenuWindow.open('新建子菜单', null, row)" v-permissions="['system:menu:create']">新建子菜单</el-button> |
| | | <el-button v-if="!row.fixed" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:menu:delete']">删除</el-button> |
| | | <el-button v-if="!row.fixed" style="color: red;" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:menu:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <el-tab-pane :name="'module'+module.id" :label="module.name" v-for="module in tableData.list" :key="module.id"> |
| | | <ul class="toolbar" v-permissions="['system:permission:create', 'system:permission:delete']"> |
| | | <li><el-button type="primary" @click="$refs.operaPermissionWindow.open('新建系统权限', module)" icon="el-icon-plus" v-permissions="['system:permission:create']">新建</el-button></li> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <template v-if="row.type === 'module'"> |
| | | <el-button type="text" @click="$refs.operaModuleWindow.open('编辑模块', row)" icon="el-icon-edit" v-permissions="['system:permission:update']">编辑</el-button> |
| | | <el-button type="text" @click="$refs.operaPermissionWindow.open('新建系统权限', row)" icon="el-icon-edit" v-permissions="['system:permission:update']">添加权限</el-button> |
| | | <el-button v-if="!row.fixed" type="text" @click="deletePermission(row)" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button> |
| | | <el-button v-if="!row.fixed" type="text" style="color: red;" @click="deletePermission(row)" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button> |
| | | </template> |
| | | <!-- 权限编辑&删除 --> |
| | | <template v-else> |
| | | <el-button v-if="!row.fixed" type="text" @click="$refs.operaPermissionWindow.open('编辑系统权限', row)" icon="el-icon-edit" v-permissions="['system:permission:update']">编辑</el-button> |
| | | <el-button v-if="!row.fixed" type="text" @click="deletePermission(row)" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button> |
| | | <el-button v-if="!row.fixed" type="text" style="color: red;" @click="deletePermission(row)" icon="el-icon-delete" v-permissions="['system:permission:delete']">删除</el-button> |
| | | </template> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:role:create', 'system:role:delete']"> |
| | | <li v-permissions="['system:role:create']"><el-button type="primary" @click="$refs.operaRoleWindow.open('新建角色')" icon="el-icon-plus">新建</el-button></li> |
| | | <li v-permissions="['system:role:delete']"><el-button @click="deleteByIdInBatch" icon="el-icon-delete">删除</el-button></li> |
| | | <li v-permissions="['system:role:delete']"><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <el-button type="text" @click="$refs.operaRoleWindow.open('编辑角色', row)" icon="el-icon-edit" v-permissions="['system:role:update']">编辑</el-button> |
| | | <el-button type="text" @click="$refs.permissionConfigWindow.open(row)" v-permissions="['system:role:createRolePermission']">配置权限</el-button> |
| | | <el-button type="text" @click="$refs.menuConfigWindow.open(row)" icon="el-icon-menu" v-permissions="['system:role:createRoleMenu']">授权菜单</el-button> |
| | | <el-button v-if="!row.fixed" type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:role:delete']">删除</el-button> |
| | | <el-button v-if="!row.fixed" type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:role:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:job:snippet:delete']"> |
| | | <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:snippet:delete']">删除</el-button></li> |
| | | <li><el-button type="danger" @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['system:job:snippet:delete']">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <template slot-scope="{row}"> |
| | | <el-button v-if="row.status === 0" type="text" @click="trigger(row)" icon="el-icon-delete">执行</el-button> |
| | | <el-button v-if="row.status === -2" type="text" @click="trigger(row)" icon="el-icon-delete">重新执行</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:job:snippet:delete']">删除</el-button> |
| | | <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['system:job:snippet:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['system:user:create', 'system:user:delete']"> |
| | | <li v-permissions="['system:user:create']"><el-button icon="el-icon-plus" type="primary" @click="$refs.operaUserWindow.open('新建用户')">新建</el-button></li> |
| | | <li v-permissions="['system:user:delete']"><el-button icon="el-icon-delete" @click="deleteByIdInBatch">删除</el-button></li> |
| | | <li v-permissions="['system:user:delete']"><el-button i type="danger" con="el-icon-delete" @click="deleteByIdInBatch">删除</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | :height="tableHeightNew" |
| | |
| | | <el-button type="text" icon="el-icon-edit" @click="$refs.operaUserWindow.open('编辑用户', row)" v-permissions="['system:user:update']">编辑</el-button> |
| | | <el-button type="text" icon="el-icon-s-custom" @click="$refs.roleConfigWindow.open(row)" v-permissions="['system:user:createUserRole']">配置角色</el-button> |
| | | <el-button type="text" @click="$refs.resetPwdWindow.open(row)" v-permissions="['system:user:resetPwd']">重置密码</el-button> |
| | | <el-button v-if="!row.fixed" type="text" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:user:delete']">删除</el-button> |
| | | <el-button v-if="!row.fixed" type="text" style="color: red;" icon="el-icon-delete" @click="deleteById(row)" v-permissions="['system:user:delete']">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |