| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051 |
- <template>
- <el-tabs v-model="activeName" @tab-click="handleClick">
- <el-tab-pane label="订单管理" name="first">
- <div style="display: inline-block;">
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>状态:</span>
- <el-select v-model="status" style="width:150px;margin-left: 10px;" @change="animeDat2(status)">
- <el-option v-for="item in taskstates" :key="item.value" :label="item.label" :value="item.value"></el-option>
- </el-select>
- </div>
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>订单类型:</span>
- <el-select v-model="orderType" style="width:150px;margin-left: 10px;" @change="animeDat2(orderType)">
- <el-option v-for="item in orderTypes" :key="item.value" :label="item.label" :value="item.value"></el-option>
- </el-select>
- </div>
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>订单号:</span>
- <el-input style="width: 200px;" @keydown.enter.native="phoneSelect" placeholder="请输入订单号"
- v-model="orderNumber"></el-input>
- </div>
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>商铺名称:</span>
- <el-input style="width: 200px;" @keydown.enter.native="phoneSelect" placeholder="请输入商户名称" v-model="shopName">
- </el-input>
- </div>
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>手机号:</span>
- <el-input style="width: 200px;" @keydown.enter.native="phoneSelect" placeholder="请输入手机号" v-model="phone">
- </el-input>
- </div>
- <div style="position: relative;display: inline-block; margin: 3px;">
- <span>骑手电话:</span>
- <el-input style="width: 200px;" @keydown.enter.native="phoneSelect" placeholder="请输入骑手电话" v-model="riderPhone">
- </el-input>
- </div>
- <div style="position: relative;display: inline-block;margin: 3px;">
- <span>昵称:</span>
- <el-input style="width: 200px;" @keydown.enter.native="phoneSelect" placeholder="请输入昵称" v-model="userName">
- </el-input>
- </div>
- <el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="phoneSelect">查询
- </el-button>
- <el-button style="margin-left:15px;" size="mini" type="primary" icon="document" @click="cleans2">重置</el-button>
- </div>
- <el-table v-loading="tableDataLoading" :data="tableData2.list">
- <el-table-column fixed prop="orderId" label="编号" width="80"></el-table-column>
- <el-table-column fixed prop="userName" label="下单用户">
- <template slot-scope="scope">
- <span style="color: #4f9dec;cursor: pointer;" @click="updates(scope.row.userId)">
- {{ scope.row.userName ? scope.row.userName : '未绑定' }}
- </span>
- </template>
- </el-table-column>
- <el-table-column fixed prop="userName" label="用户头像">
- <template slot-scope="scope">
- <img v-if="scope.row.avatar" :src="scope.row.avatar" width="60" height="60" />
- <span v-else>
- <img src="../../assets/img/avatar.png" width="60" height="60" />
- </span>
- </template>
- </el-table-column>
- <el-table-column prop="phone" label="手机号"></el-table-column>
- <el-table-column prop="shopName" label="商铺信息" width="300">
- <template slot-scope="scope">
- <div>店铺名称:{{scope.row.shopName}}</div>
- <div>店铺电话:{{scope.row.shopPhone}}</div>
- <div>店铺地址:{{scope.row.detailedAddress}}</div>
- </template>
- </el-table-column>
- <el-table-column prop="orderType" label="订单类型">
- <template slot-scope="scope">
- <div>{{scope.row.orderType==1?'到店取餐':'外卖配送'}}</div>
- </template>
- </el-table-column>
- <el-table-column prop="address" label="配送信息" width="300">
- <template slot-scope="scope">
- <div v-if="scope.row.orderType==2">
- <div>订餐人:{{scope.row.address.userName}}</div>
- <div>订餐人电话:{{scope.row.address.userPhone}}</div>
- <div>订餐地址:{{scope.row.address.address}}({{scope.row.address.addressDetail}})</div>
- </div>
- <div v-else style="text-align: center;width: 100%;"> - </div>
- </template>
- </el-table-column>
- <el-table-column prop="riderNickName" label="骑手昵称" width="120">
- <template slot-scope="scope">
- <div style="color: #4f9dec;cursor: pointer;" @click="updates(scope.row.riderUserId)">{{scope.row.riderNickName}}</div>
- </template>
- </el-table-column>
- <el-table-column prop="riderPhone" label="骑手电话" width="200"></el-table-column>
- <el-table-column prop="orderNumber" label="订单号" width="180"></el-table-column>
- <el-table-column prop="content" label="内容" width="300">
- <template slot-scope="scope">
- <div>
- <div v-for="(item,index) in scope.row.orderGoodsList" :key="index">
- <span>{{index+1}}.
- 商品名:{{item.goodsName}},</span><span>数量:{{item.goodsNum}},</span><span>规格:{{item.skuMessage}}</span>
- </div>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="goodsPriceZ" label="商品总价(元)" width="100">
- </el-table-column>
- <el-table-column prop="couponMoney" label="优惠金额(元)" width="100">
- <template slot-scope="scope">
- <div>
- <div>
- <span>{{scope.row.couponMoney?scope.row.couponMoney:'0'}}元</span>
- </div>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="packMoney" label="打包费(元/个 具体按照数量计算)" width="100">
- <template slot-scope="scope">
- <div>{{scope.row.packMoney}}元/个</div>
- </template>
- </el-table-column>
- <el-table-column prop="errandMoney" label="跑腿费(元)" width="100">
- <template slot-scope="scope">
- <div>{{scope.row.orderType==1?'0':scope.row.errandMoney}}元</div>
- </template>
- </el-table-column>
- <el-table-column prop="payMoney" label="支付金额(元)" width="100">
- </el-table-column>
- <el-table-column prop="remark" label="订单备注" width="150">
- </el-table-column>
- <el-table-column prop="payTime" label="支付时间"></el-table-column>
- <el-table-column prop="payType" label="支付方式" width="100">
- <template slot-scope="scope">
- <span v-if="scope.row.payType === 1 ">微信</span>
- <span v-if="scope.row.payType === 2 ">余额</span>
- <span v-if="scope.row.payType === 3 ">其他</span>
- </template>
- </el-table-column>
- <el-table-column prop="orderCode" label="取餐号" width="100"></el-table-column>
- <el-table-column fixed="right" prop="status" label="状态" width="100">
- <template slot-scope="scope">
- <span style="color: #4f9dec;" v-if="scope.row.status === 0 ">待结算</span>
- <span style="color: #4f9dec;" v-if="scope.row.status === 1 || scope.row.status === 2 ">待支付</span>
- <span style="color: #4f9dec;" v-if="scope.row.status === 3 ">
- {{scope.row.orderType==1?'待取餐':'待配送'}}
- </span>
- <span style="color: #4f9dec;" v-if="scope.row.status === 4 ">已完成</span>
- <span style="color: #999;" v-if="scope.row.status === 5 ">已取消</span>
- <span style="color: #999;" v-if="scope.row.status === 6 ">制作中</span>
- <span style="color: #999;" v-if="scope.row.status === 7 ">商家待接单</span>
- <span style="color: #999;" v-if="scope.row.status === 8 ">商家已拒单</span>
- </template>
- </el-table-column>
- <el-table-column fixed="right" prop="status" label="操作" width="250">
- <template slot-scope="scope">
- <el-button size="mini" type="primary" v-if="scope.row.status === 6 " :disabled="!isAuth('mission:qucan')"
- @click="wancheng(scope.row)">制作已完成</el-button>
- <el-button size="mini" type="danger" :disabled="!isAuth('mission:tuikuan')" style="margin: 10px;"
- v-if="scope.row.status === 3 || scope.row.status === 6|| scope.row.status === 7"
- @click="tuikuan(scope.row)">退款</el-button>
- <el-button size="mini" type="primary" v-if="scope.row.status === 3 " :disabled="!isAuth('mission:qucan')"
- @click="wancheng(scope.row)" style="margin: 5px 0;">{{scope.row.orderType==1?'餐品已完成':'餐品已完成'}}
- </el-button>
- <el-button size="mini" type="primary" v-if="scope.row.status == 3 ||scope.row.status === 4 || scope.row.status === 6"
- :disabled="!isAuth('mission:qucan')" @click="dayin(scope.row)" style="margin: 3px;">打印小票</el-button>
- <el-button size="mini" type="primary" @click="complainDetails(scope.row)" style="margin: 3px;">聊天内容
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- <div style="color: #B94A48;font-size: 20px;margin-top: 10px;" v-if="totalMoney">本页累计交易统计:{{totalMoney}}元</div>
- <div style="text-align: center;margin-top: 10px;">
- <el-pagination @size-change="handleSizeChange3" @current-change="handleCurrentChange3"
- :page-sizes="[10, 20, 30, 40]" :page-size="limit" :current-page="page" layout="total,sizes, prev, pager, next"
- :total="tableData2.totalCount">
- </el-pagination>
- </div>
- </el-tab-pane>
- <!-- 任务拒绝弹框 -->
- <el-dialog title="任务拒绝" :visible.sync="dialogFormVisible7" center>
- <div style="margin-bottom: 10px;">
- <span style="width: 200px;display: inline-block;text-align: right;">拒绝理由:</span>
- <el-input style="width:50%;" v-model="content" type="text" placeholder="请输入拒绝理由"></el-input>
- </div>
- <div slot="footer" class="dialog-footer">
- <el-button @click="dialogFormVisible7 = false">取 消</el-button>
- <el-button type="primary" @click="refuseto()">确 定</el-button>
- </div>
- </el-dialog>
- <!-- 图片展示-->
- <el-dialog title="图片" :visible.sync="dialogVisible" width="35%" :before-close="handleClose">
- <span v-if="imageUrl.length>0" v-for="(item, index) in imageUrl" :key="index" style="width: 100px;
- height: 100px;display:inline-block;">
- <!-- <el-image style = "width: 100px; height: 100px" :src = "item" :preview-src-list="imageUrl"></el-image>-->
- <img :src="item" alt="" style="width: 100px; height: 100px">
- </span>
- <span v-else>暂无图片</span>
- </el-dialog>
- <!-- 聊天内容 -->
- <el-dialog title="聊天内容" :visible.sync="dialogFormVisible" center>
- <!-- <div style="margin:2% 0;display: inline-block;">
- <span>内容:</span>
- <el-input style="width: 150px;" @keydown.enter.native="select1" clearable placeholder="请输入聊天内容"
- v-model="content">
- </el-input>
- </div>
- <div style="display: inline-block;">
- <el-button style='margin-left:15px;' size="mini" type="primary" icon="document" @click="select1">查询</el-button>
- <el-button style='margin-left:15px;' size="mini" type="primary" icon="document" @click="cleans1">重置</el-button>
- </div> -->
- <el-table v-loading="tableDataLoading1" :data="userData.list">
- <el-table-column prop="chatContentId" label="编号" width="80">
- </el-table-column>
- <el-table-column prop="userName" label="用户昵称">
- <template slot-scope="scope">
- <div v-if="scope.row.shopId" >
- {{ scope.row.shopName}}
- </div>
- <div v-else style="color: #4f9dec;cursor: pointer;" @click="details(scope.row)">
- {{scope.row.userName ? scope.row.userName : scope.row.riderName}}
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="title" label="用户头像">
- <template slot-scope="scope">
- <!-- <div v-if="scope.row.avatar == null || scope.row.avatar == ''">
- 暂无图片
- </div> -->
- <div >
- <el-popover placement="top-start" title="" trigger="hover">
- <img style="width: 50px; height: 50px" :src="scope.row.shopCover?scope.row.shopCover:scope.row.riderAvatar?scope.row.riderAvatar:scope.row.userAvatar" alt="" slot="reference">
- <img style="width: 200px; height: 200px" :src="scope.row.shopCover?scope.row.shopCover:scope.row.riderAvatar?scope.row.riderAvatar:scope.row.userAvatar" alt="">
- </el-popover>
- </div>
- </template>
- </el-table-column>
- <el-table-column prop="content" label="信息内容" width="280">
- <template slot-scope="scope">
- <div v-if="scope.row.messageType==1">{{scope.row.content}}</div>
- <div v-if="scope.row.messageType==2">
- <el-popover placement="top-start" title="" trigger="hover">
- <img style="width: 50px; height: 50px" :src="scope.row.content" alt="" slot="reference">
- <img style="width: 200px; height: 200px" :src="scope.row.content" alt="">
- </el-popover>
- </div>
- <div v-if="scope.row.messageType==3">
- <audio :src="scope.row.content" type="audio/wav" controls="controls"></audio>
- </div>
- <div v-if="scope.row.messageType==4">
- <el-popover placement="top-start" title="" trigger="hover">
- <img style="width: 50px; height: 50px"
- :src="'https://www.daweilinli.com/emoji/'+scope.row.content" alt="" slot="reference">
- <img style="width: 200px; height: 200px"
- :src="'https://www.daweilinli.com/emoji/'+scope.row.content" alt="">
- </el-popover>
- </div>
- <!-- <div v-if="scope.row.messageType==4">
- <el-popover placement="top-start" title="" trigger="hover">
- <img style="width: 50px; height: 50px" :src="'https://www.daweilinli.com/emoji/'+scope.row.content" alt="" slot="reference">
- <img style="width: 200px; height: 200px" :src="'https://www.daweilinli.com/emoji/'+scope.row.content" alt="">
- </el-popover>
- </div> -->
- </template>
- </el-table-column>
- <el-table-column prop="createTime" label="创建时间" width="150">
- </el-table-column>
- <el-table-column prop="createTime" label="操作" width="100" fixed="right">
- <template slot-scope="scope">
- <el-button size="mini" type="danger" :disabled="!isAuth('userList:delete')" @click="deleteuser(scope.row)">
- 删除</el-button>
- </template>
- </el-table-column>
- </el-table>
- <div style="text-align: center;margin-top: 10px;">
- <el-pagination @size-change="handleSizeChange1" @current-change="handleCurrentChange1"
- :page-sizes="[10, 20, 30, 50, 100]" :page-size="limit1" :current-page="page1"
- layout="total,sizes, prev, pager, next" :total="userData.totalCount">
- </el-pagination>
- </div>
- </el-dialog>
- </el-tabs>
- </template>
- <script>
- export default {
- data() {
- return {
- dialogVisible: false,
- imageUrl: [],
- limit: 10,
- page: 1,
- totalMoney: 0,
- phone: '',
- userName: '',
- orderNumber: '',
- status: '',
- describes: '',
- token: '',
- taskNum: '',
- taskMoney: '',
- statesnum: [{
- label: '全部',
- value: 0
- },
- {
- label: '待接单',
- value: 2
- },
- {
- label: '制作中',
- value: 6
- },
- {
- label: '待送达',
- value: 3
- },
- {
- label: '已完成',
- value: 4
- },
- {
- label: '已下架',
- value: 5
- },
- ],
- taskstates: [{
- label: '全部',
- value: ''
- },
- {
- label: '待结算',
- value: 0
- },
- {
- label: '待支付',
- value: 1
- },
- {
- label: '商家待接单',
- value: 7
- },
- {
- label: '制作中',
- value: 6
- },
- {
- label: '待取餐/待配送', //待取餐、派送中
- value: 3
- },
- {
- label: '已完成',
- value: 4
- },
- {
- label: '已取消',
- value: 5
- },
- {
- label: '商家已拒单',
- value: 8
- }
- ],
- orderType: '',
- orderTypes: [{
- label: '全部',
- value: ''
- },
- {
- label: '到店取餐',
- value: 1
- },
- {
- label: '外卖配送',
- value: 2
- },
- ],
- shopId: '',
- shopName: '',
- shopList: '',
- sort: 10,
- id: '',
- btnChangeEnable: true,
- helpTakeId: '',
- helpMaintainId: '',
- content: '',
- classifyIcon: '',
- classifyId: '',
- classifyUrl: '',
- classifyName: '',
- classifyDeatilsName: '',
- formLabelWidth: '200px',
- activeName: 'first',
- tableDataLoading: false,
- tableDataLoading1:false,
- dialogFormVisible: false,
- dialogFormVisible1: false,
- dialogFormVisible2: false,
- dialogFormVisible3: false,
- dialogFormVisible4: false,
- dialogFormVisible5: false,
- dialogFormVisible6: false,
- dialogFormVisible7: false,
- dialogFormVisible8: false,
- tableData: [],
- tableData2: {},
- form: {
- id: '',
- classifyName: '',
- classifyUrl: '',
- classifyIcon: '',
- describes: ''
- },
- form2: {
- id: '',
- classifyDeatilsName: '',
- classifyUrl: '',
- classifyIcon: '',
- taskNum: '',
- taskMoney: '',
- },
- protectjieData: [],
- protectpaiData: [],
- helpTaskData: [],
- safeguardData: [],
- classifyData: [],
- checkBoxData: [], //多选框选择的值
- checkBoxData2: [], //多选框选择的值
- chatConversationId: '',
- userData: {},
- limit1: 10,
- page1: 1,
- riderPhone:'',
- }
- },
- methods: {
- // 详情跳转
- updates(userId) {
- this.$router.push({
- path: '/userDetail',
- query: {
- userId: userId
- }
- })
- },
- // 详情跳转
- details(row) {
- if (!row.shopId) {
- }
- let userId = row.userId ? row.userId : row.riderId
- this.$router.push({
- path: '/userDetail',
- query: {
- userId: userId
- }
- })
- },
- // 图标上传一级分类
- handleAvatarSuccess(file) {
- this.classifyIcon = file.data
- },
- // 图标上传一级分类编辑
- handleAvatarSuccess2(file) {
- this.form.classifyIcon = file.data
- },
- // 多选
- changeFun(val) {
- this.checkBoxData = val
- },
- // 多选
- changeFun2(val) {
- this.checkBoxData2 = val
- },
- handleSizeChange(val) {
- this.limit = val
- this.dataSelect()
- },
- handleCurrentChange(val) {
- this.page = val
- this.dataSelect()
- },
- handleSizeChange2(val) {
- this.limit = val
- this.classifySelect()
- },
- handleCurrentChange2(val) {
- this.page = val
- this.classifySelect()
- },
- handleSizeChange3(val) {
- this.limit = val
- this.taskdataSelect()
- },
- handleCurrentChange3(val) {
- this.page = val
- this.taskdataSelect()
- },
- handleSizeChange1(val) {
- this.limit1 = val;
- this.neirongSelect(this.chatConversationId)
- },
- handleCurrentChange1(val) {
- this.page1 = val;
- this.neirongSelect(this.chatConversationId)
- },
- // tabs切换
- handleClick(tab, event) {
- if (tab._props.label == '订单管理') {
- this.page = 1
- this.limit = 10
- this.taskdataSelect()
- }
- },
- // 下架
- soldClick(row) {
- this.$confirm(`确定要下架此任务?`, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.$http({
- url: this.$http.adornUrl(`help/outHelpOrder/?helpOrderId=${row.id}`),
- method: 'post',
- data: this.$http.adornData({})
- }).then(({
- data
- }) => {
- if (data.code == 0) {
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.dataSelect()
- }
- })
- } else {
- this.$message({
- message: data.msg,
- type: 'error',
- duration: 1500,
- onClose: () => {
- this.dataSelect()
- }
- })
- }
- })
- }).catch(() => {})
- },
- //查看照片
- refund(e) {
- this.imageUrl = []
- if (e.image != null) {
- let img = e.image.split(',')
- if (img.length != 0) {
- this.imageUrl = img
- }
- }
- this.dialogVisible = true
- },
- handleClose(done) {
- // this.$confirm('确认关闭?')
- // .then(_ => {
- done()
- // })
- // .catch(_ => {});
- },
- // 添加一级分类弹框
- classifyStair() {
- this.dialogFormVisible = true
- },
- // 添加一级分类确定
- StairNoticeTo() {
- if (this.classifyName == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请输入分类名称',
- type: 'warning'
- })
- return
- }
- // if (this.classifyUrl == '') {
- // this.$notify({
- // title: '提示',
- // duration: 1800,
- // message: '请输入分类链接',
- // type: 'warning'
- // });
- // return
- // }
- if (this.describes == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请输入分类描述',
- type: 'warning'
- })
- return
- }
- if (this.classifyIcon == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请上传分类图标',
- type: 'warning'
- })
- return
- }
- this.$http({
- url: this.$http.adornUrl('helpClassify/saveHelpClassify'),
- method: 'post',
- data: this.$http.adornData({
- 'classifyName': this.classifyName,
- 'state': this.state,
- 'sort': this.sort,
- 'classifyIcon': this.classifyIcon,
- 'classifyUrl': this.classifyUrl,
- 'describes': this.describes
- })
- }).then(({
- data
- }) => {
- this.dialogFormVisible = false
- this.$message({
- message: '一级分类添加成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.classifyUrl = ''
- this.classifyName = ''
- this.classifyIcon = ''
- this.describes = ''
- this.classifySelect()
- }
- })
- })
- },
- // 修改一级分类
- compile(index, rows) {
- this.dialogFormVisible2 = true
- this.form.id = rows.id
- this.form.classifyName = rows.classifyName
- this.form.classifyUrl = rows.classifyUrl
- this.form.classifyIcon = rows.classifyIcon
- this.form.describes = rows.describes
- },
- // 修改一级分类确定
- CompileNoticeTo() {
- if (this.form.classifyName == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请输入分类名称',
- type: 'warning'
- })
- return
- }
- if (this.form.describes == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请输入分类描述',
- type: 'warning'
- })
- return
- }
- if (this.form.classifyIcon == '') {
- this.$notify({
- title: '提示',
- duration: 1800,
- message: '请上传分类图标',
- type: 'warning'
- })
- return
- }
- this.$http({
- url: this.$http.adornUrl('helpClassify/updateHelpClassify'),
- method: 'post',
- data: this.$http.adornData({
- 'id': this.form.id,
- 'classifyName': this.form.classifyName,
- 'classifyUrl': this.form.classifyUrl,
- 'classifyIcon': this.form.classifyIcon,
- 'describes': this.form.describes
- })
- }).then(({
- data
- }) => {
- this.dialogFormVisible2 = false
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.classifySelect()
- }
- })
- })
- },
- //删除一级
- deleteStair(row) {
- let delid = row.id
- this.$confirm(`确定删除此条信息?`, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.$http({
- url: this.$http.adornUrl(`helpClassify/deleteClassifyById/?id=${delid}`),
- method: 'post',
- data: this.$http.adornData({})
- }).then(({
- data
- }) => {
- this.$message({
- message: '删除成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.name = ''
- this.classifySelect()
- }
- })
- })
- }).catch(() => {})
- },
- // 手机号搜索
- phoneSelect() {
- this.page = 1
- this.limit = 10
- this.taskdataSelect()
- },
- // 重置
- cleans2() {
- this.page = 1
- this.phone = ''
- this.riderPhone = ''
- this.userName = ''
- this.orderNumber = ''
- this.status = ''
- this.shopName = ''
- this.orderType = ''
- this.taskdataSelect()
- },
- // 查询
- select() {
- this.page = 1
- this.limit = 10
- this.dataSelect()
- },
- // 重置
- cleans() {
- this.phone = ''
- this.status = 0
- this.content = ''
- this.dataSelect()
- },
- // select选择事件
- animeDat(state) {
- this.dataSelect()
- },
- animeDat2(state) {
- this.page = 1
- this.taskdataSelect()
- },
- // 获取派单数据列表
- dataSelect() {
- this.tableDataLoading = true
- this.$http({
- url: this.$http.adornUrl('help/selectStatusHelpOrder'),
- method: 'get',
- params: this.$http.adornParams({
- 'page': this.page,
- 'limit': this.limit,
- 'phone': this.phone,
- 'status': this.status,
- 'content': this.content
- })
- }).then(({
- data
- }) => {
- this.tableDataLoading = false
- let returnData = data.data
- this.tableData = returnData
- })
- },
- // 获取接单数据列表
- taskdataSelect() {
- this.totalMoney = 0
- this.tableDataLoading = true
- this.$http({
- url: this.$http.adornUrl('admin/order/selectAllOrderAdmin'),
- method: 'get',
- params: this.$http.adornParams({
- 'page': this.page,
- 'limit': this.limit,
- 'phone': this.phone,
- 'userName': this.userName,
- 'orderNumber': this.orderNumber,
- 'status': this.status,
- 'shopName': this.shopName,
- 'orderType': this.orderType,
- 'riderPhone':this.riderPhone
- })
- }).then(({
- data
- }) => {
- this.tableDataLoading = false
- let returnData = data.data
- this.tableData2 = returnData
- for (var i in this.tableData2.list) {
- this.tableData2.list[i].goodsPriceZ = 0
- this.totalMoney = this.totalMoney + this.tableData2.list[i].payMoney
- if (this.tableData2.list[i].address) {
- this.tableData2.list[i].address = JSON.parse(this.tableData2.list[i].address)
- }
- for (var j in this.tableData2.list[i].orderGoodsList) {
- this.tableData2.list[i].orderGoodsList[j].goodsPriceZ = (this.tableData2.list[i].orderGoodsList[j]
- .goodsPrice * this.tableData2.list[i].orderGoodsList[j].goodsNum)
- this.tableData2.list[i].goodsPriceZ = this.tableData2.list[i].goodsPriceZ + this.tableData2.list[i]
- .orderGoodsList[j].goodsPriceZ
- }
- }
- this.totalMoney = this.totalMoney.toFixed(2)
- })
- },
- // 商铺列表
- classifySelect() {
- this.tableDataLoading = true
- this.$http({
- url: this.$http.adornUrl('admin/goods/selectAllShopList'),
- method: 'get',
- params: this.$http.adornParams({})
- }).then(({
- data
- }) => {
- this.tableDataLoading = false
- let returnData = data.data
- this.shopList = returnData
- })
- },
- // 餐品完成
- wancheng(row) {
- if (row.status == 3) {
- var status1 = 4
- }
- if (row.status == 6) {
- var status1 = 3
- }
- this.$http({
- url: this.$http.adornUrl('admin/order/updateOrder'),
- method: 'post',
- data: this.$http.adornData({
- 'status': status1,
- 'orderId': row.orderId,
- 'orderNumber': row.orderNumber
- })
- }).then(({
- data
- }) => {
- if (data.code == 0) {
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.taskdataSelect()
- }
- })
- } else {
- this.$message({
- message: data.msg,
- type: 'warning',
- duration: 1500,
- onClose: () => {}
- })
- }
- })
- },
- // 退款
- tuikuan(row) {
- console.log('退款')
- this.$confirm(`确定要退款?`, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- console.log('取定')
- this.$http({
- url: this.$http.adornUrl('admin/order/adminCancelOrder'),
- method: 'post',
- params: this.$http.adornParams({
- 'orderId': row.orderId
- })
- }).then(({
- data
- }) => {
- if (data.code == 0) {
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.taskdataSelect()
- }
- })
- } else {
- this.$message({
- message: data.msg,
- type: 'error',
- duration: 1500,
- onClose: () => {}
- })
- }
- })
- }).catch(() => {
- console.log('取消')
- })
- },
- // 打印小票
- dayin(row) {
- this.$http({
- url: this.$http.adornUrl('admin/order/print'),
- method: 'post',
- params: this.$http.adornParams({
- 'orderId': row.orderId
- })
- }).then(({
- data
- }) => {
- if (data.code == 0) {
- this.$message({
- message: '操作成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.taskdataSelect()
- }
- })
- } else {
- this.$message({
- message: data.msg,
- type: 'warning',
- duration: 1500,
- onClose: () => {}
- })
- }
- })
- },
- // 聊天内容
- complainDetails(row) {
- this.chatConversationId = row.orderId
- this.neirongSelect(this.chatConversationId)
- this.dialogFormVisible = true
- },
- select1() {
- this.page1 = 1
- this.neirongSelect(this.chatConversationId)
- },
- // 重置
- cleans1() {
- this.content = ''
- this.page1 = 1
- this.neirongSelect(this.chatConversationId)
- },
- // 获取聊天内容列表
- neirongSelect(chatConversationId) {
- this.tableDataLoading1 = true
- this.$http({
- url: this.$http.adornUrl('shop/ordersChat/selectGameChatDetails'),
- method: 'get',
- params: this.$http.adornParams({
- 'page': this.page1,
- 'limit': this.limit1,
- 'ordersId': this.chatConversationId,
- 'content': this.content
- })
- }).then(({
- data
- }) => {
- this.tableDataLoading1 = false
- let returnData = data.data;
- this.userData = returnData
- })
- },
- //删除聊天
- deleteuser(row) {
- // let delid = row.userId
- this.$confirm(`确定删除此条信息?`, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- }).then(() => {
- this.$http({
- url: this.$http.adornUrl('shop/ordersChat/deleteOrdersChat?chatContentId=' + row.chatContentId),
- method: 'post',
- params: this.$http.adornParams({})
- }).then(({
- data
- }) => {
- if (data.code == 0) {
- this.$message({
- message: '删除成功',
- type: 'success',
- duration: 1500,
- onClose: () => {
- this.neirongSelect(this.chatConversationId)
- }
- })
- } else {
- this.$message({
- message: data.msg,
- type: 'warning',
- duration: 1500,
- onClose: () => {}
- })
- }
- })
- })
- },
- },
- mounted() {
- this.classifySelect()
- this.taskdataSelect()
- }
- }
- </script>
- <style>
- </style>
|