提交 9c6a7fd8 authored 作者: huaxinzhu's avatar huaxinzhu

云仓优化版本项目

上级 51f51ca2
...@@ -229,7 +229,8 @@ ...@@ -229,7 +229,8 @@
} }
}; };
//xhttp.open("GET", '//sysapi.jxhh.com/api/v1/oem/webSite/domainChannel?domain='+ssa+'&field='+op, true); // 直接上正式,以防上线忘改 //xhttp.open("GET", '//sysapi.jxhh.com/api/v1/oem/webSite/domainChannel?domain='+ssa+'&field='+op, true); // 直接上正式,以防上线忘改
xhttp.open("GET", 'http://192.168.26.179:6601/api/v1/oem/webSite/domainChannel?domain='+ssa+'&field='+op, true); // 直接上正式,以防上线忘改 // xhttp.open("GET", '//newsys.jxhh.com/api/v1/oem/webSite/domainChannel?domain='+ssa+'&field='+op, true); // 内网开发
xhttp.open("GET", 'http://192.168.26.179:6601/api/v1/oem/webSite/domainChannel?domain='+ssa+'&field='+op, true); // 测试
xhttp.send(); xhttp.send();
} }
</script> </script>
......
import request from '@/utils/request'
// 结算列表
export function listVerifyrecord(data) {
return request({
url: '/local/asset/getSellerBalanceLogList',
method: 'post',
data: data
})
}
// 结算详情
// export function getVerifyrecord (id) {
// return request({
// url: '/system/order/getOrderSellerListInfo?id='+id,
// method: 'get'
// })
// }
export function getVerifyrecord(query) {
return request({
url: '/system/order/getOrderSellerListInfo',
method: 'get',
params: query
})
}
import request from '@/utils/request' import request from '@/utils/request'
// 查询verifyrecord列表 // 结算列表
export function listVerifyrecord(query) { export function listVerifyrecord(data) {
return request({ return request({
url: '/system/verifyrecord/list', url: '/local/asset/getSellerBalanceLogList',
method: 'get', method: 'post',
params: query data: data
}) })
} }
// 查询verifyrecord详细 // 详情
export function getVerifyrecord (id) { export function getVerifyrecord (id) {
return request({ return request({
url: '/system/verifyrecord/getDetail?id='+id, url: '/system/order/getOrderSellerListInfo?id='+id,
method: 'get' method: 'get'
}) })
} }
......
...@@ -5,6 +5,7 @@ export function indexInfo(params) { ...@@ -5,6 +5,7 @@ export function indexInfo(params) {
return request({ return request({
// url: 'http://sysapi.jxhh.com/api/v1/oem/webSite/domainChannel', // url: 'http://sysapi.jxhh.com/api/v1/oem/webSite/domainChannel',
url: 'http://192.168.26.179:6601/api/v1/oem/webSite/domainChannel', url: 'http://192.168.26.179:6601/api/v1/oem/webSite/domainChannel',
// url: 'http://newsys.jxhh.com/api/v1/oem/webSite/domainChannel',
method: 'get', method: 'get',
params params
...@@ -15,6 +16,7 @@ export function getdomain(params) { ...@@ -15,6 +16,7 @@ export function getdomain(params) {
return request({ return request({
// url: 'http://sysapi.jxhh.com/api/v1/oem/channel/domainFront', // url: 'http://sysapi.jxhh.com/api/v1/oem/channel/domainFront',
url: 'http://192.168.26.179:6601/api/v1/oem/channel/domainFront', url: 'http://192.168.26.179:6601/api/v1/oem/channel/domainFront',
// url: 'http://newsys.jxhh.com/api/v1/oem/channel/domainFront',
method: 'get', method: 'get',
params params
...@@ -25,6 +27,7 @@ export function webSite(params) { ...@@ -25,6 +27,7 @@ export function webSite(params) {
return request({ return request({
// url: 'http://sysapi.jxhh.com/api/v1/oem/common/counsel', // url: 'http://sysapi.jxhh.com/api/v1/oem/common/counsel',
url: 'http://192.168.26.179:6601/api/v1/oem/common/counsel', url: 'http://192.168.26.179:6601/api/v1/oem/common/counsel',
// url: 'http://newsys.jxhh.com/api/v1/oem/common/counsel',
method: 'get', method: 'get',
params params
}) })
...@@ -35,6 +38,7 @@ export function getallCloudList(params) { ...@@ -35,6 +38,7 @@ export function getallCloudList(params) {
return request({ return request({
// url: 'http://sysapi.jxhh.com/api/v1/oem/front/CloudList', // url: 'http://sysapi.jxhh.com/api/v1/oem/front/CloudList',
url: 'http://192.168.26.179:6601/api/v1/oem/front/CloudList', url: 'http://192.168.26.179:6601/api/v1/oem/front/CloudList',
// url: 'http://newsys.jxhh.com/api/v1/oem/front/CloudList',
method: 'get', method: 'get',
params params
}) })
...@@ -44,6 +48,7 @@ export function getssoUrl(data) { ...@@ -44,6 +48,7 @@ export function getssoUrl(data) {
return request({ return request({
// url: '//sysapi.jxhh.com/api/v1/oem/webSite/ssoChannel', // url: '//sysapi.jxhh.com/api/v1/oem/webSite/ssoChannel',
url: '//192.168.26.179:6601/api/v1/oem/webSite/ssoChannel', url: '//192.168.26.179:6601/api/v1/oem/webSite/ssoChannel',
// url: 'http://newsys.jxhh.com/api/v1/oem/webSite/ssoChannel',
method: 'get', method: 'get',
params: data params: data
}) })
......
<template>
<div class="app-container">
<el-card class="box-card">
<div slot="header" class="clearfix">
<el-form class="form-params" :model="queryParams" label-width="auto" :inline="true" size="small">
<el-form-item label="总订单号" prop="order_sn">
<el-input style="width:220px;" v-model="queryParams.order_sn" placeholder="请输入总订单号"/>
</el-form-item>
<el-form-item label="结算时间" prop="cashTime">
<el-date-picker
v-model="queryParams.cashTime"
type="daterange"
align="left"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="getList">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
</el-form-item>
</el-form>
</div>
<el-table :data="withdrawlogList" :height="tableHeight">
<el-table-column label="序号" align="center" width="55">
<template slot-scope="scope">
<span>{{ scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column label="总订单号" align="center" prop="links_des"></el-table-column>
<el-table-column label="账单结算时间" align="center" prop="add_time">
<template slot-scope="scope">
{{ speTiemFormatter(scope.row.add_time) }}<br/>
</template>
</el-table-column>
<el-table-column label="结算金额" :formatter="formatFee" align="center" prop="change_money"></el-table-column>
<el-table-column label="交易单号" align="center" prop="balance_sn"></el-table-column>
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button type="text" @click="viewDetails(scope.row)">详情</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<div class="footer_pagination">
<el-pagination
background
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:current-page="currentPage"
:page-sizes="[20, 40, 60, 80, 100]"
:page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="total">
</el-pagination>
</div>
</el-card>
<!-- 详情 -->
<el-dialog title="账单详情" width="80%" :close-on-click-modal="false" :destroy-on-close="true"
:visible.sync="detailDialog" center :before-close="cancel">
<div class="settle-con">
<div class="settle-details-header">
<div style="float:left;">
<span>订单状态:</span>
<span>{{ orderStatusFormatter(orderStatus) }}</span>
<span style="margin: 0 0 0 30px;">总订单号:</span>
<span>{{ orderSn }}</span>
</div>
<div style="float:right;">
<span>结算状态:</span>
<span>{{ settlementStatus }}</span>
</div>
</div>
<!-- 商品订单 table -->
<el-table class="title_table " align="center" :data="orderGoodsDetail" :span-method="arraySpanMethod">
<el-table-column label="商品主图/商品名称" align="center">
<template slot-scope="scope">
<div class="img-title-table">
<img v-if="scope.row.thumb" style="width:60px;height:60px;" :src="scope.row.thumb"/>
<div class="ml10">{{ scope.row.title }}</div>
</div>
</template>
</el-table-column>
<el-table-column label="商品ID" align="center" prop="id"></el-table-column>
<el-table-column label="规格/数量/金额" align="center" >
<template slot-scope="scope">
{{ scope.row.goods_option_title }}<br/>
{{ scope.row.goods_price / 100 }}<br/>
x {{ scope.row.total }}<br/>
</template>
</el-table-column>
<el-table-column label="下单/发货/完成时间" align="center" width="" >
<template slot-scope="scope">
{{ speTiemFormatter(scope.row.created_time) }}<br/>
{{ speTiemFormatter(scope.row.send_time) }}<br/>
{{ speTiemFormatter(scope.row.updated_time) }}
</template>
</el-table-column>
<el-table-column label="运费" align="center" width="" >
<!-- <template slot-scope="scope">-->
<!-- {{ scope.row. / 100 }}-->
<!-- </template>-->
</el-table-column>
<el-table-column label="收货人" align="center" width="" >
<template>
{{ realName }}
</template>
</el-table-column>
<el-table-column label="联系电话" align="center" width="" prop="">
<template>
{{ mobile }}
</template>
</el-table-column>
</el-table>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listVerifyrecord,
getVerifyrecord
} from '@/api/module/settlementbill'
import {dateFormat} from '@/utils'
export default {
name: "Settlementbill",
data() {
return {
fullHeight: 0,
tableHeight: 0,
// 查询参数
queryParams: { // 查询参数
cashTime: [],
order_sn: ''
},
total: 0,
currentPage: 1,
pageSize: 20,
withdrawlogList: [],
// 账单详情
detailDialog: false,
orderStatus: '',
orderSn: '',
settlementStatus: '',
orderGoodsDetail: [],
realName: '',
mobile: '',
}
}, // data end
created() {
/** 查询 提现记录 列表 */
this.getList();
this.$nextTick(() => {
this.fullHeight = document.getElementsByClassName('box-card')[0].clientHeight
})
},
watch: {
fullHeight(val) {
let formHeight = document.getElementsByClassName('clearfix')[0].clientHeight
this.tableHeight = val - formHeight - 100;
}
},
methods: {
/** 查询 提现记录 列表 */
getList() {
let params = {
page: this.currentPage,
limit: this.pageSize,
}
if (this.queryParams.order_sn != '') {
params['order_sn'] = this.queryParams.order_sn;
}
if (this.queryParams.cashTime && this.queryParams.cashTime.length == 2) {
params['start_time'] = new Date(this.queryParams.cashTime[0]).getTime() / 1000;
params['end_time'] = new Date(this.queryParams.cashTime[1]).getTime() / 1000;
}
listVerifyrecord(params).then(res => {
if (res.code == 1) {
this.withdrawlogList = res.data.list;
this.total = res.data.count;
} else {
this.$message({type: 'error',message: res.message ? res.message : '数据请求失败'});
}
});
},
/** 详情 跳转 */
viewDetails(row) {
const indexId = row.id ? row.id : 0;
getVerifyrecord({order_id: indexId}).then(res=> {
if(res.code == 1 && res.data) {
this.detailDialog = true;
if (res.data.order) {
this.orderStatus = res.data.order.status;
this.orderSn = res.data.order.order_sn;
this.settlementStatus = res.data.order.withdraw_status == 1 ? '已结算' : '未结算';
this.realName = res.data.order.real_name;
this.mobile = res.data.order.mobile;
}
if (res.data.order_goods_detail) {
this.orderGoodsDetail = res.data.order_goods_detail;
}
}else {
this.$message({type: 'error',message: res.message ? res.message : '数据请求失败'});
}
});
},
/** 重置 搜索条件 */
resetQuery() {
this.queryParams = {
cashTime: [],
order_sn: ''
}
this.currentPage = 1
this.pageSize = 20
this.getList();
},
handleSizeChange(val) {
this.pageSize = val
this.getList()
},
handleCurrentChange(val) {
this.currentPage = val
this.getList()
},
/** 格式化价格 返回原数据是 分,除以100 */
formatFee(row, s, value, i) {
let nm = 0,
money = value
if (money > 0) {
nm = money / 100
}
return nm
},
/** 格式化时间 */
formatTime(row) {
var Time = row.add_time
var newtime = ""
if (Time > 0) {
newtime = dateFormat(Time * 1000, "Y-m-d H:i:s");
}
return newtime
},
/** 时间格式化 */
speTiemFormatter(time) {
if (time) {
return dateFormat(time *1000, 'Y-m-d H:i:s')
}else {
return '--'
}
},
/** 订单状态 */
orderStatusFormatter(status) {
if(status === -1) {
return '订单取消'
}else if (status === 0) {
return '待付款'
}else if (status === 1) {
return '待发货'
}else if (status === 2) {
return '待收货'
}else if (status === 3) {
return '已完成'
}else if (status === 4) {
return '已结算'
}else {
return '' // 保险,返回空
}
},
// 取消按钮
cancel() {
this.detailDialog = false;
},
// 表单重置
reset() {
// this.form = {
// id: null,
// reflect_sn: null,
// reflect_money: null,
// status: 0,
// des: null,
// seller_bank_id: null,
// add_time: null,
// fee: null,
// seller_id: null,
// after_reflect_money: null
// };
// this.resetForm("form");
},
/** 表格合并 列单元格 */
arraySpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex > 3 ) { // 用于设置要合并开始的列号
if (rowIndex === 0) { // 用于设置合并开始的行号
return {
rowspan: 100,     // 合并的行数
colspan: 1 // 合并的列数,设为0则直接不显示
}
} else {
return {
rowspan: 0,
colspan: 0
}
}
}
},
} //methods结束
}
</script>
<style scoped>
.form-params .el-form-item {
margin: 10px 0 10px 10px;
}
/* 分页 */
.footer_pagination {
text-align: center;
margin-top: 15px;
}
/* 详情 */
.settle-details-header {
margin: 0 5px 10px;
overflow: hidden;
}
.img-title-table {
display: flex;
justify-content: center;
align-items: center;
}
.ml10 {
margin-left: 10px;
}
</style>
...@@ -716,14 +716,16 @@ export default { ...@@ -716,14 +716,16 @@ export default {
return return
} }
this.dialogCheck = true
let params = { let params = {
goods_order_sn: row.goods_order_sn, goods_order_sn: row.goods_order_sn,
sku_id: row.goods_option_id sku_id: row.goods_option_id
} }
expressInfoNew(params).then(res => { expressInfoNew(params).then(res => {
if (res.code == 1 && res.data) { if (res.code == 1 && res.data) {
this.dialogCheck = true
this.activities = res.data.order_track ? res.data.order_track : []; this.activities = res.data.order_track ? res.data.order_track : [];
}else {
this.$message({type:'error',message: res.message ? res.message : '获取数据失败' });
} }
}) })
}, },
......
...@@ -17,8 +17,7 @@ ...@@ -17,8 +17,7 @@
<el-tooltip v-if="channel_id == 0" class="item" effect="dark" content="查看2021年10月8日23:00之前的订单" placement="bottom-end"> <el-tooltip v-if="channel_id == 0" class="item" effect="dark" content="查看2021年10月8日23:00之前的订单" placement="bottom-end">
<el-button size="small" @click="gotoOldShop">查看老订单</el-button> <el-button size="small" @click="gotoOldShop">查看老订单</el-button>
</el-tooltip> </el-tooltip>
<el-button size="mini" type="primary" icon="el-icon-download" @click="handleExportUnSendOrder">导出订单</el-button> <el-button size="mini" type="primary" icon="el-icon-position" @click="handleExportDeliveryOrder">批量发货</el-button>
<el-button size="mini" icon="el-icon-position" @click="handleExportDeliveryOrder">批量发货</el-button>
</div> </div>
<div v-show="activeName == 'fourth' " style="position: absolute; top: -2px; right: 0;"> <div v-show="activeName == 'fourth' " style="position: absolute; top: -2px; right: 0;">
<el-tooltip v-if="channel_id == 0" class="item" effect="dark" content="查看2021年10月8日23:00之前的订单" placement="bottom-end"> <el-tooltip v-if="channel_id == 0" class="item" effect="dark" content="查看2021年10月8日23:00之前的订单" placement="bottom-end">
...@@ -33,96 +32,91 @@ ...@@ -33,96 +32,91 @@
</div> </div>
</div> </div>
<div class="form-box"> <div class="form-box">
<el-form class="form-params" ref="form" :model="form" label-width="85px"> <el-form class="form-params" ref="form" :model="form" label-width="120px" :inline="true" size="small">
<el-row type="flex" class="row-bg" justify="space-around"> <el-form-item label="总订单号:">
<el-col :span="6"> <el-input style="width:220px;" v-model="form.order_sn" placeholder="请输入总订单号"/>
<el-form-item label="总订单号:"> </el-form-item>
<el-input size="mini" v-model="form.order_sn" placeholder="请输入总订单号"/>
</el-form-item> <el-form-item label="商品名称:">
</el-col> <el-input v-model="form.goods_name" placeholder="请输入商品名称"/>
</el-form-item>
<el-col :span="6">
<el-form-item label="商品名称:"> <el-form-item label="收货人:">
<el-input size="mini" v-model="form.goods_name" placeholder="请输入商品名称"/> <el-input v-model="form.real_name" placeholder="请输入收货人"/>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="6"> <el-form-item label="联系电话:">
<el-form-item label="收货人:"> <el-input v-model="form.Tel" placeholder="请输入联系电话"/>
<el-input size="mini" v-model="form.real_name" placeholder="请输入收货人"/> </el-form-item>
</el-form-item>
</el-col> <el-form-item label="结算状态:" prop="settlement_status" v-show="activeName == 'fourth' ">
</el-row> <el-select v-model="form.settlement_status" placeholder="请选择结算状态" style="width:150px;">
<el-row type="flex" class="row-bg" justify="space-around"> <el-option label="全部" value=""></el-option>
<el-col :span="6"> <el-option label="已结算" value="1"></el-option>
<el-form-item label="联系电话:"> <el-option label="未结算" value="0"></el-option>
<el-input size="mini" v-model="form.Tel" placeholder="请输入联系电话"/> </el-select>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="6" v-show="activeName == 'first' || activeName == 'fourth' "> <el-form-item label="下单时间:" v-show="activeName == 'first' || activeName == 'fourth' ">
<el-form-item label="下单时间:"> <el-date-picker
<el-date-picker style="width:280px;"
size="mini" v-model="form.dateTime"
v-model="form.dateTime" type="daterange"
type="daterange" align="left"
align="left" unaLink-panels
unaLink-panels range-separator="至"
range-separator="至" start-placeholder="开始日期"
start-placeholder="开始日期" end-placeholder="结束日期"
end-placeholder="结束日期" ></el-date-picker>
></el-date-picker> </el-form-item>
</el-form-item>
</el-col> <el-form-item label="发货时间:" v-show="activeName == 'second' ">
<el-col :span="6" v-show="activeName == 'second' "> <el-date-picker
<el-form-item label="发货时间:"> v-model="form.sendTime"
<el-date-picker type="daterange"
size="mini" align="left"
v-model="form.sendTime" unaLink-panels
type="daterange" range-separator="至"
align="left" start-placeholder="开始日期"
unaLink-panels end-placeholder="结束日期"
range-separator="至" ></el-date-picker>
start-placeholder="开始日期" </el-form-item>
end-placeholder="结束日期"
></el-date-picker> <el-form-item label="完成时间:" v-show="activeName == 'third' ">
</el-form-item> <el-date-picker
</el-col> v-model="form.finishTime"
<el-col :span="6" v-show="activeName == 'third' "> type="daterange"
<el-form-item label="完成时间:"> align="left"
<el-date-picker unaLink-panels
size="mini" range-separator="至"
v-model="form.finishTime" start-placeholder="开始日期"
type="daterange" end-placeholder="结束日期"
align="left" ></el-date-picker>
unaLink-panels </el-form-item>
range-separator="至"
start-placeholder="开始日期" <el-form-item>
end-placeholder="结束日期" <el-button size="mini" type="primary" icon="el-icon-search" @click="getListOrder">搜索</el-button>
></el-date-picker> <el-button size="mini" icon="el-icon-refresh" @click="resetBtn(true)">重置</el-button>
</el-form-item> </el-form-item>
</el-col>
<el-col :span="6">
<el-button size="mini" type="primary" icon="el-icon-search" style="margin-left: 20px;"
@click="getListOrder">搜索
</el-button>
<el-button size="mini" icon="el-icon-refresh" @click="resetBtn(true)">重置</el-button>
</el-col>
</el-row>
</el-form> </el-form>
</div> </div>
<!-- 表头 --> <!-- 表头 -->
<div class="table-header-spe"> <div class="table-header-spe">
<el-table class="title_table hxz-el-table" align="center"> <el-table class="title_table hxz-el-table" align="center">
<el-table-column align="center" width="55" v-if="activeName == 'fourth' "> <!-- <el-table-column align="center" width="55" v-if="activeName == 'fourth' ">-->
<template slot="header" slot-scope="scope"> <!-- <template slot="header" slot-scope="scope">-->
<el-checkbox v-model="allTablesChecked" ></el-checkbox> <!-- <el-checkbox v-model="allTablesChecked" ></el-checkbox>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="订单号" align="center" width="220" ></el-table-column> <!-- <el-table-column label="订单号" align="center" width="220" ></el-table-column>-->
<el-table-column label="商品名称" align="center"></el-table-column> <el-table-column label="商品名称" align="center"></el-table-column>
<el-table-column label="规格/数量/金额" align="center" ></el-table-column> <el-table-column label="规格/数量/金额" align="center" ></el-table-column>
<el-table-column label="下单/发货/完成时间" align="center" width="180" ></el-table-column> <el-table-column label="下单/发货/完成时间" align="center" width="180" ></el-table-column>
<el-table-column label="运费" align="center" width="100" ></el-table-column>
<el-table-column label="收货人" align="center" width="180" ></el-table-column> <el-table-column label="收货人" align="center" width="180" ></el-table-column>
<el-table-column label="联系电话" align="center" width="180"></el-table-column> <el-table-column label="联系电话" align="center" width="180"></el-table-column>
<el-table-column label="物流信息" align="center" width="120"></el-table-column>
<el-table-column label="操作" align="center" width="120"></el-table-column> <el-table-column label="操作" align="center" width="120"></el-table-column>
</el-table> </el-table>
</div> </div>
...@@ -130,7 +124,16 @@ ...@@ -130,7 +124,16 @@
<div class="table-all-con box-card"> <div class="table-all-con box-card">
<el-card v-for="(item, index) in tableDataList" :key="index" class="card1 text item"> <el-card v-for="(item, index) in tableDataList" :key="index" class="card1 text item">
<div slot="header" class="el-card-header-spe"> <div slot="header" class="el-card-header-spe">
<div><span>订单状态:</span><span>{{ orderStatusFormatter(item.order.status) }}</span><span style="margin: 0 0 0 30px;">总订单号:</span><span>{{ item.order.order_sn }}</span></div> <div style="float:left;">
<span>订单状态:</span>
<span>{{ orderStatusFormatter(item.order.status) }}</span>
<span style="margin: 0 0 0 30px;">总订单号:</span>
<span>{{ item.order.order_sn }}</span>
</div>
<div style="float:right;">
<span>结算状态:</span>
<span>{{ withdrwaFormat(item.order.withdraw_status) }}</span>
</div>
</div> </div>
<div class="item-table"> <div class="item-table">
<el-table <el-table
...@@ -138,8 +141,8 @@ ...@@ -138,8 +141,8 @@
:show-header="false" :show-header="false"
:span-method="arraySpanMethod" :span-method="arraySpanMethod"
:data="item.order_goods"> :data="item.order_goods">
<el-table-column type="selection" width="55" align="center" v-if="activeName == 'fourth' "></el-table-column> <!-- <el-table-column type="selection" width="55" align="center" v-if="activeName == 'fourth' "></el-table-column>-->
<el-table-column prop="goods_order_sn" label="订单号" width="220" align="center"></el-table-column> <!-- <el-table-column prop="goods_order_sn" label="订单号" width="220" align="center"></el-table-column>-->
<el-table-column prop="title" label="商品名称" align="center"> <el-table-column prop="title" label="商品名称" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="img-title-table"> <div class="img-title-table">
...@@ -157,9 +160,14 @@ ...@@ -157,9 +160,14 @@
</el-table-column> </el-table-column>
<el-table-column prop="created_time" label="下单时间" width="180" align="center"> <el-table-column prop="created_time" label="下单时间" width="180" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
{{ speTiemFormatter(scope.row.created_time) }}<br/> <span>{{ timeFormatter(scope.row.created_time) }}</span><br/>
{{ speTiemFormatter(scope.row.send_time) }}<br/> <span :class="{ 'red-text' : sendTimeFormatter(scope.row.send_time) == '未发货' }">{{ sendTimeFormatter(scope.row.send_time) }}</span><br/>
{{ speTiemFormatter(scope.row.updated_time) }} <span :class="{ 'red-text' : updatedTimeFormatter(scope.row.updated_time) == '未完成' }">{{ updatedTimeFormatter(scope.row.updated_time) }}</span>
</template>
</el-table-column>
<el-table-column prop="dispatch_price" width="100" label="运费" align="center">
<template slot-scope="scope">
{{ item.order.dispatch_price / 100 }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="phone" width="180" label="收货人" align="center"> <el-table-column prop="phone" width="180" label="收货人" align="center">
...@@ -172,6 +180,11 @@ ...@@ -172,6 +180,11 @@
{{ item.order.mobile }} {{ item.order.mobile }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="物流信息" label="物流信息" width="120" align="center">
<template slot-scope="scope">
<el-button type="text" @click="handleExpressInfo(scope.row)">查看物流</el-button>
</template>
</el-table-column>
<el-table-column label="操作" width="120" align="center" fixed="right"> <el-table-column label="操作" width="120" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" @click="handleInfo(scope.row)">详情</el-button> <el-button type="text" @click="handleInfo(scope.row)">详情</el-button>
...@@ -222,18 +235,23 @@ ...@@ -222,18 +235,23 @@
</el-step> </el-step>
</el-steps> </el-steps>
<div class="delivery-data-con"> <div class="delivery-data-con">
<el-upload <div>
action="" <el-button size="mini" type="primary" icon="el-icon-download" @click="handleExportUnSendOrder">导出订单</el-button>
class="upload-demo" </div>
:auto-upload="false" <div>
:limit="1" <el-upload
accept="*/*" action=""
:on-change="importExcel" class="upload-demo"
:on-remove="removeDevExcel" :auto-upload="false"
ref="upload" :limit="1"
> accept="*/*"
<el-button size="small" type="primary">上传批量发货Excel表单</el-button> :on-change="importExcel"
</el-upload> :on-remove="removeDevExcel"
ref="upload"
>
<el-button size="small" type="primary">上传批量发货Excel表单</el-button>
</el-upload>
</div>
</div> </div>
<div class="delivery-tips-con"> <div class="delivery-tips-con">
<p style="text-align: center">常见问题</p> <p style="text-align: center">常见问题</p>
...@@ -250,12 +268,30 @@ ...@@ -250,12 +268,30 @@
<el-button type="primary" @click="subDelivery">确 定</el-button> <el-button type="primary" @click="subDelivery">确 定</el-button>
</span> </span>
</el-dialog> </el-dialog>
<!-- 查看物流 -->
<el-dialog title="物流信息" width="50%" class="cutclass" :close-on-click-modal="false" :destroy-on-close="true" :visible.sync="dialogExpress" append-to-body>
<div class="logistics">
<el-timeline>
<el-timeline-item
v-for="(activity, index) in activities"
:key="index"
:icon="activity.icon"
:type="activity.type"
color="#0bbd87"
:size="activity.size"
:timestamp="activity.msg_time">
{{activity.content}}
</el-timeline-item>
</el-timeline>
<div v-if="activities.length == 0">暂无物流信息</div>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { indexInfo } from '@/api/webSite' import { indexInfo } from '@/api/webSite'
import {listOrder, exportOrder, orderInfo, deliveryOrder, expressList, getOrderTabData , exportUnSendOrderGoodsData,deliveryOrderExport} from '@/api/module/order' import {listOrder, exportOrder, orderInfo, expressInfoNew, deliveryOrder, expressList, getOrderTabData , exportUnSendOrderGoodsData,deliveryOrderExport} from '@/api/module/order'
import {dateFormat} from '@/utils' import {dateFormat} from '@/utils'
import OrderDetail from './components/orderDetail.vue' import OrderDetail from './components/orderDetail.vue'
import XLSX from "xlsx" import XLSX from "xlsx"
...@@ -282,6 +318,7 @@ ...@@ -282,6 +318,7 @@
goods_name: '', goods_name: '',
real_name: '', real_name: '',
Tel: '', Tel: '',
settlement_status: '',
dateTime: [], dateTime: [],
finishTime: [], finishTime: [],
sendTime: [], sendTime: [],
...@@ -300,7 +337,10 @@ ...@@ -300,7 +337,10 @@
tableHeight: null, tableHeight: null,
allTablesChecked: false, allTablesChecked: false,
// 订单导出 入参 // 订单导出 入参
exportParams: {} exportParams: {},
// 查看物流窗口
dialogExpress: false,
activities: [],
} }
}, },
watch: { watch: {
...@@ -347,9 +387,9 @@ ...@@ -347,9 +387,9 @@
checkSelectable( row,index) { checkSelectable( row,index) {
}, },
// 表格合并 列单元格 /** 表格合并 列单元格 */
arraySpanMethod({ row, column, rowIndex, columnIndex }) { arraySpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex > 3) { // 用于设置要合并开始的列号 if (columnIndex > 2 && columnIndex != 6) { // 用于设置要合并开始的列号
if (rowIndex === 0) { // 用于设置合并开始的行号 if (rowIndex === 0) { // 用于设置合并开始的行号
return { return {
rowspan: 100,     // 合并的行数 rowspan: 100,     // 合并的行数
...@@ -366,13 +406,32 @@ ...@@ -366,13 +406,32 @@
formatter(time) { formatter(time) {
return dateFormat(time *1000, 'Y-m-d H:i:s') return dateFormat(time *1000, 'Y-m-d H:i:s')
}, },
speTiemFormatter(time) { /** 一般时间 格式化 */
if (time) { timeFormatter(time) {
if(time) {
return dateFormat(time *1000, 'Y-m-d H:i:s') return dateFormat(time *1000, 'Y-m-d H:i:s')
}else { } else {
return '--' return '--'
} }
}, },
/** 发货时间 格式化 */
sendTimeFormatter(time) {
if(time) {
return dateFormat(time *1000, 'Y-m-d H:i:s')
} else {
return '未发货'
}
},
/** 发货时间 格式化 */
updatedTimeFormatter(time) {
if(time) {
return dateFormat(time *1000, 'Y-m-d H:i:s')
} else {
return '未完成'
}
},
/** 订单状态 */ /** 订单状态 */
orderStatusFormatter(status) { orderStatusFormatter(status) {
if(status === -1) { if(status === -1) {
...@@ -391,6 +450,18 @@ ...@@ -391,6 +450,18 @@
return '' // 保险,返回空 return '' // 保险,返回空
} }
}, },
/** 结算状态 */
withdrwaFormat(status) {
let res = '';
if(status == 0) {
res = '未结算'
}else if (status == 1) {
res = '已结算'
} else {
res = ''
}
return res
},
// 重置 // 重置
resetBtn(iscall) { resetBtn(iscall) {
this.form = { this.form = {
...@@ -401,6 +472,7 @@ ...@@ -401,6 +472,7 @@
dateTime: [], dateTime: [],
finishTime: [], finishTime: [],
sendTime: [], sendTime: [],
settlement_status: ''
} }
this.currentPage = 1 this.currentPage = 1
this.pageSize = 20 this.pageSize = 20
...@@ -478,6 +550,10 @@ ...@@ -478,6 +550,10 @@
params['mobile'] = this.form.Tel params['mobile'] = this.form.Tel
} }
if (this.form.settlement_status) {
params['settlement_status'] = this.form.settlement_status
}
if( this.form.dateTime && this.form.dateTime.length == 2) { if( this.form.dateTime && this.form.dateTime.length == 2) {
params['created_start_time'] = new Date(this.form.dateTime[0]).getTime() / 1000; params['created_start_time'] = new Date(this.form.dateTime[0]).getTime() / 1000;
params['created_end_time'] = new Date(this.form.dateTime[1]).getTime() / 1000; params['created_end_time'] = new Date(this.form.dateTime[1]).getTime() / 1000;
...@@ -658,6 +734,27 @@ ...@@ -658,6 +734,27 @@
this.$message({type: 'error', message: '部分订单未填写物流公司或物流单号,请完善后再上传'}); this.$message({type: 'error', message: '部分订单未填写物流公司或物流单号,请完善后再上传'});
} }
}, },
/** 查看物流信息 */
handleExpressInfo(row) {
// 如果 商品订单没有发货,则不用请求了
if(row.goods_status == 0) {
this.$message({type:'warning',message:'您还未发货,暂无物流信息'});
return
}
let params = {
goods_order_sn: row.goods_order_sn,
sku_id: row.goods_option_id
}
expressInfoNew(params).then(res => {
if (res.code == 1 && res.data) {
this.dialogExpress = true
this.activities = res.data.order_track ? res.data.order_track : [];
}else {
this.$message({type:'error',message: res.message ? res.message : '获取数据失败' });
}
})
},
// 订单详情 // 订单详情
handleInfo(row) { handleInfo(row) {
let order_id = row.order_id let order_id = row.order_id
...@@ -752,13 +849,17 @@ ...@@ -752,13 +849,17 @@
} }
.form-box { .form-box {
background-color: #F7F8FA;
/*margin-bottom: 20px;*/ /*margin-bottom: 20px;*/
padding-top: 20px; /*padding-top: 10px;*/
} }
.form-params { .form-params {
background-color: #F7F8FA;
}
/deep/.form-params .el-form-item {
margin: 5px 0 5px 0;
} }
.img-title-table { .img-title-table {
display: flex; display: flex;
...@@ -775,6 +876,10 @@ ...@@ -775,6 +876,10 @@
width: 80%; width: 80%;
margin: 10px auto; margin: 10px auto;
font-weight: bold; font-weight: bold;
display: flex;
justify-content: space-around;
align-items: center;
flex-direction: row;
} }
.delivery-tips-con { .delivery-tips-con {
...@@ -783,10 +888,10 @@ ...@@ -783,10 +888,10 @@
font-weight: bold; font-weight: bold;
} }
.delivery-data-con { /*.delivery-data-con {*/
height: 100px; /* height: 100px;*/
margin: 20px auto; /* margin: 20px auto;*/
} /*}*/
.upload-demo { .upload-demo {
text-align: center; text-align: center;
...@@ -799,12 +904,13 @@ ...@@ -799,12 +904,13 @@
.table-header-spe { .table-header-spe {
background-color: #F7F8FA; background-color: #F7F8FA;
margin:10px 0 10px; padding:0 34px 0 22px;
margin: 5px 0;
} }
/deep/ .title_table{ /deep/ .title_table{
width: calc(100% - 94px) !important; /*width: calc(100% - 94px) !important;*/
margin: 0 40px; /*margin: 0 40px;*/
} }
/deep/ .title_table .el-table__body-wrapper{ /deep/ .title_table .el-table__body-wrapper{
display: none !important; display: none !important;
...@@ -818,11 +924,16 @@ ...@@ -818,11 +924,16 @@
} }
.table-all-con { .table-all-con {
height: calc(100% - 250px); height: calc(100% - 190px);
overflow: auto; overflow: auto;
} }
.ml10 { .ml10 {
margin-left: 10px; margin-left: 10px;
} }
.red-text {
font-size: 12px;
color: red!important;
}
</style> </style>
...@@ -88,6 +88,24 @@ ...@@ -88,6 +88,24 @@
</el-row> </el-row>
</div> </div>
</div> </div>
<!-- 买家信息 -->
<div>
<div class="card-header-title">
<span class="blue-block blue-block-goods-title"></span>买家信息
</div>
<div>
<el-row class="row-title">
<el-col :span="4" class="text-r text-c">收货人姓名</el-col>
<el-col :span="4" class="text-r text-c">联系电话</el-col>
<el-col :span="10" class="text-r text-c">收货地址</el-col>
</el-row>
<el-row class="row-title">
<el-col :span="4" class="text-l text-c">{{ orderConsignee.real_name }}</el-col>
<el-col :span="4" class="text-l text-c">{{ orderConsignee.mobile }}</el-col>
<el-col :span="10" class="text-l text-c">{{ orderConsignee.provice + orderConsignee.city + orderConsignee.district + orderConsignee.street + orderConsignee.address }}</el-col>
</el-row>
</div>
</div>
<!-- 买家退货凭证 --> <!-- 买家退货凭证 -->
<div v-if="asOrderType == 2"> <div v-if="asOrderType == 2">
<div class="card-header-title"> <div class="card-header-title">
...@@ -280,6 +298,16 @@ ...@@ -280,6 +298,16 @@
goods_option_title: '', // 商品规格 goods_option_title: '', // 商品规格
total: '', // 商品数量 total: '', // 商品数量
}, },
// 买家信息
orderConsignee: {
real_name: '',
mobile: '',
provice: '',
city: '',
district: '',
street: '',
address: '',
},
// 售后申请 图片 list // 售后申请 图片 list
asSrcList: [], asSrcList: [],
asApplyList: [], asApplyList: [],
...@@ -498,6 +526,11 @@ ...@@ -498,6 +526,11 @@
this.goodsOrderDetail.goods_price = res.data.order_goods.goods_price / 100 this.goodsOrderDetail.goods_price = res.data.order_goods.goods_price / 100
} }
// 买家 信息
if (res.data.order_consignee) {
this.orderConsignee = res.data.order_consignee;
}
// 退款凭证 list 数据 // 退款凭证 list 数据
this.returnInfoTableData = []; this.returnInfoTableData = [];
if(res.data.order_refund.return_info && res.data.order_refund.return_info.express_code) { if(res.data.order_refund.return_info && res.data.order_refund.return_info.express_code) {
...@@ -843,6 +876,10 @@ ...@@ -843,6 +876,10 @@
text-align: left; text-align: left;
} }
.text-c {
justify-content: center!important;
}
.count-down-con { .count-down-con {
padding: 10px 20px; padding: 10px 20px;
margin: 0; margin: 0;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论