Yer 2023-04-21 17:36:05 +08:00
commit 8b0ca5ba7e
6 changed files with 491 additions and 615 deletions

View File

@ -26,11 +26,10 @@
<FormItem label="规格名称" prop="specName">
<Input v-model="form.specName" maxlength="30" clearable style="width: 100%" />
</FormItem>
{{ form }}
<FormItem label="规格值" prop="specValue">
<Select v-model="form.specValue" placeholder="输入后回车添加" multiple filterable allow-create
:popper-append-to-body="false" popper-class="spec-values-popper"
style="width: 100%; text-align: left; margin-right: 10px">
style="width: 100%; text-align: left; margin-right: 10px" @on-create="handleCreate2">
<Option v-for="item in specValue" :value="item" :label="item" :key="item">
</Option>
</Select>
@ -51,7 +50,7 @@ import { regular } from "@/utils";
export default {
name: "spec",
components: {},
data() {
data () {
return {
loading: true, //
modalType: 0, //
@ -150,29 +149,32 @@ export default {
};
},
methods: {
handleCreate2 (v) {
console.log(v);
},
//
init() {
init () {
this.getDataList();
},
//
changePage(v) {
changePage (v) {
this.searchForm.pageNumber = v;
this.getDataList();
this.clearSelectAll();
},
//
changePageSize(v) {
changePageSize (v) {
this.searchForm.pageSize = v;
this.getDataList();
},
//
handleSearch() {
handleSearch () {
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = 10;
this.getDataList();
},
//
handleReset() {
handleReset () {
this.$refs.searchForm.resetFields();
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = 10;
@ -180,7 +182,7 @@ export default {
this.getDataList();
},
//
changeSort(e) {
changeSort (e) {
this.searchForm.sort = e.key;
this.searchForm.order = e.order;
if (e.order === "normal") {
@ -189,16 +191,16 @@ export default {
this.getDataList();
},
//
clearSelectAll() {
clearSelectAll () {
this.$refs.table.selectAll(false);
},
//
changeSelect(e) {
changeSelect (e) {
this.selectList = e;
this.selectCount = e.length;
},
//
getDataList() {
getDataList () {
this.loading = true;
//
getSpecListData(this.searchForm).then((res) => {
@ -211,7 +213,7 @@ export default {
this.loading = false;
},
//
saveSpec() {
saveSpec () {
this.$refs.form.validate((valid) => {
if (valid) {
this.submitLoading = true;
@ -246,7 +248,7 @@ export default {
});
},
//
add() {
add () {
this.modalType = 0;
this.modalTitle = "添加";
this.$refs.form.resetFields();
@ -255,8 +257,7 @@ export default {
this.modalVisible = true;
},
//
edit(v) {
console.log(v);
edit (v) {
this.modalType = 1;
this.modalTitle = "编辑";
// null""
@ -266,23 +267,21 @@ export default {
}
}
let localVal = v.specValue;
console.log(localVal.split(","))
this.form.specName = v.specName;
this.form.id = v.id;
this.$nextTick(() => {
this.$set(this.form, 'specValue', localVal.split(","))
})
// this.$nextTick(() => {
// this.$set(this.form, 'specValue', localVal.split(","))
// })
this.form.specValue = localVal.split(",")
if (localVal && localVal.indexOf("," > 0)) {
this.specValue = this.form.specValue;
} else {
this.specValue = [];
}
console.log("form.specValue", this.form);
this.modalVisible = true;
},
//
remove(v) {
remove (v) {
this.$Modal.confirm({
title: "确认删除",
content: "您确认要删除 " + v.specName + " ?",
@ -299,7 +298,7 @@ export default {
});
},
//
delAll() {
delAll () {
if (this.selectCount <= 0) {
this.$Message.warning("您还未选择要删除的数据");
return;
@ -327,7 +326,7 @@ export default {
});
},
},
mounted() {
mounted () {
this.init();
},
};

View File

@ -4,22 +4,10 @@
<Row @keydown.enter.native="handleSearch">
<Form ref="searchForm" :model="searchForm" inline :label-width="70" class="search-form">
<Form-item label="订单号" prop="orderSn">
<Input
type="text"
v-model="searchForm.orderSn"
placeholder="请输入订单号"
clearable
style="width: 200px"
/>
<Input type="text" v-model="searchForm.orderSn" placeholder="请输入订单号" clearable style="width: 200px" />
</Form-item>
<Form-item label="会员名称" prop="buyerName">
<Input
type="text"
v-model="searchForm.buyerName"
placeholder="请输入会员名称"
clearable
style="width: 200px"
/>
<Input type="text" v-model="searchForm.buyerName" placeholder="请输入会员名称" clearable style="width: 200px" />
</Form-item>
<Form-item label="订单状态" prop="orderStatus">
<Select v-model="searchForm.orderStatus" placeholder="请选择" clearable style="width: 200px">
@ -32,274 +20,251 @@
</Select>
</Form-item>
<Form-item label="下单时间">
<DatePicker
v-model="selectDate"
type="datetimerange"
format="yyyy-MM-dd"
clearable
@on-change="selectDateRange"
placeholder="选择起始时间"
style="width: 200px"
></DatePicker>
<DatePicker v-model="selectDate" type="datetimerange" format="yyyy-MM-dd" clearable
@on-change="selectDateRange" placeholder="选择起始时间" style="width: 200px"></DatePicker>
</Form-item>
<Button @click="handleSearch" type="primary" icon="ios-search" class="search-btn">搜索</Button>
</Form>
</Row>
<Table
:loading="loading"
border
:columns="columns"
:data="data"
ref="table"
class="mt_10"
sortable="custom"
@on-sort-change="changeSort"
></Table>
<Table :loading="loading" border :columns="columns" :data="data" ref="table" class="mt_10" sortable="custom"
@on-sort-change="changeSort"></Table>
<Row type="flex" justify="end" class="mt_10">
<Page
:current="searchForm.pageNumber"
:total="total"
:page-size="searchForm.pageSize"
@on-change="changePage"
@on-page-size-change="changePageSize"
:page-size-opts="[10, 20, 50]"
size="small"
show-total
show-elevator
show-sizer
></Page>
<Page :current="searchForm.pageNumber" :total="total" :page-size="searchForm.pageSize" @on-change="changePage"
@on-page-size-change="changePageSize" :page-size-opts="[10, 20, 50]" size="small" show-total show-elevator
show-sizer></Page>
</Row>
</Card>
</div>
</template>
<script>
import * as API_Order from "@/api/order";
import * as API_Order from "@/api/order";
export default {
name: "fictitiousOrderList",
data() {
return {
loading: true, //
searchForm: {
//
pageNumber: 1, //
pageSize: 10, //
sort: "", //
order: "", //
startDate: "", //
endDate: "", //
orderType: "VIRTUAL",
orderSn: "",
buyerName: "",
orderStatus: ""
export default {
name: "fictitiousOrderList",
data () {
return {
loading: true, //
searchForm: {
//
pageNumber: 1, //
pageSize: 10, //
sort: "", //
order: "", //
startDate: "", //
endDate: "", //
orderType: "VIRTUAL",
orderSn: "",
buyerName: "",
orderStatus: ""
},
selectDate: null, //
columns: [
{
title: "订单号",
key: "sn",
minWidth: 230,
tooltip: true
},
selectDate: null, //
columns: [
{
title: "订单号",
key: "sn",
minWidth: 230,
tooltip: true
},
{
title: "下单时间",
key: "createTime",
width: 200,
},
{
title: "订单来源",
key: "clientType",
width: 95,
render: (h, params) => {
if (params.row.clientType == "H5") {
return h("div", {}, "移动端");
} else if (params.row.clientType == "PC") {
return h("div", {}, "PC端");
} else if (params.row.clientType == "WECHAT_MP") {
return h("div", {}, "小程序端");
} else if (params.row.clientType == "APP") {
return h("div", {}, "移动应用端");
} else {
return h("div", {}, params.row.clientType);
}
},
},
{
title: "买家名称",
key: "memberName",
width: 130,
},
{
title: "订单金额",
key: "flowPrice",
minWidth: 120,
sortable: true,
render: (h, params) => {
return h(
"div",
this.$options.filters.unitPrice(params.row.flowPrice, "¥")
);
},
},
{
title: "订单状态",
key: "orderStatus",
width:95,
render: (h, params) => {
if (params.row.orderStatus == "UNPAID") {
return h("div", [h("tag", {props: {color: "magenta"}}, "未付款")]);
} else if (params.row.orderStatus == "PAID") {
return h("div", [h("tag", {props: {color: "blue"}}, "已付款")]);
} else if (params.row.orderStatus == "COMPLETED") {
return h("div", [h("tag", {props: {color: "green"}}, "已完成")]);
} else if (params.row.orderStatus == "TAKE") {
return h("div", [h("tag", {props: {color: "volcano"}}, "待核验")]);
} else if (params.row.orderStatus == "CANCELLED") {
return h("div", [h("tag", {props: {color: "red"}}, "已取消")]);
}
{
title: "下单时间",
key: "createTime",
width: 200,
},
{
title: "订单来源",
key: "clientType",
width: 95,
render: (h, params) => {
if (params.row.clientType == "H5") {
return h("div", {}, "移动端");
} else if (params.row.clientType == "PC") {
return h("div", {}, "PC端");
} else if (params.row.clientType == "WECHAT_MP") {
return h("div", {}, "小程序端");
} else if (params.row.clientType == "APP") {
return h("div", {}, "移动应用端");
} else {
return h("div", {}, params.row.clientType);
}
},
{
title: "操作",
key: "action",
align: "center",
width: 200,
render: (h, params) => {
return h("div", [
h(
"Button",
{
props: {
type: "primary",
size: "small",
},
attrs: {
disabled: params.row.orderStatus == "UNPAID" ? false : true,
},
style: {
marginRight: "5px",
},
on: {
click: () => {
this.confirmPrice(params.row);
},
},
},
"收款"
),
h(
"Button",
{
props: {
type: "info",
size: "small",
},
style: {
marginRight: "5px",
},
on: {
click: () => {
this.detail(params.row);
},
},
},
"查看"
),
]);
},
},
{
title: "买家名称",
key: "memberName",
width: 130,
},
{
title: "订单金额",
key: "flowPrice",
minWidth: 120,
sortable: true,
render: (h, params) => {
return h(
"div",
this.$options.filters.unitPrice(params.row.flowPrice, "¥")
);
},
],
data: [], //
total: 0, //
};
},
methods: {
//
init() {
this.getDataList();
},
//
changePage(v) {
this.searchForm.pageNumber = v;
this.getDataList();
},
//
changePageSize(v) {
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = v;
this.getDataList();
},
//
handleSearch() {
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = 10;
this.getDataList();
},
//
changeSort(e) {
this.searchForm.sort = e.key;
this.searchForm.order = e.order;
if (e.order === "normal") {
this.searchForm.order = "";
}
this.getDataList();
},
//
selectDateRange(v) {
if (v) {
this.searchForm.startDate = v[0];
this.searchForm.endDate = v[1];
}
},
//
getDataList() {
this.loading = true;
API_Order.getOrderList(this.searchForm).then((res) => {
this.loading = false;
if (res.success) {
this.data = res.result.records;
this.total = res.result.total;
},
{
title: "订单状态",
key: "orderStatus",
width: 95,
render: (h, params) => {
if (params.row.orderStatus == "UNPAID") {
return h("div", [h("tag", { props: { color: "magenta" } }, "未付款")]);
} else if (params.row.orderStatus == "PAID") {
return h("div", [h("tag", { props: { color: "blue" } }, "已付款")]);
} else if (params.row.orderStatus == "COMPLETED") {
return h("div", [h("tag", { props: { color: "green" } }, "已完成")]);
} else if (params.row.orderStatus == "TAKE") {
return h("div", [h("tag", { props: { color: "volcano" } }, "待核验")]);
} else if (params.row.orderStatus == "CANCELLED") {
return h("div", [h("tag", { props: { color: "red" } }, "已取消")]);
}
}
});
this.total = this.data.length;
this.loading = false;
},
//
confirmPrice(v) {
this.$Modal.confirm({
title: "确认收款",
content: "您确定要收款吗?",
loading: true,
onOk: () => {
API_Order.orderPay(v.sn).then(res => {
if(res.success){
this.$Message.success("收款成功")
this.getDataList()
}
this.$Modal.remove();
})
},
{
title: "操作",
key: "action",
align: "center",
width: 200,
render: (h, params) => {
return h("div", [
h(
"Button",
{
props: {
type: "primary",
size: "small",
},
attrs: {
disabled: params.row.orderStatus == "UNPAID" ? false : true,
},
style: {
marginRight: "5px",
},
on: {
click: () => {
this.confirmPrice(params.row);
},
},
},
"收款"
),
h(
"Button",
{
props: {
type: "info",
size: "small",
},
style: {
marginRight: "5px",
},
on: {
click: () => {
this.detail(params.row);
},
},
},
"查看"
),
]);
},
});
},
//
detail(v) {
let sn = v.sn;
this.$router.push({
name: "order-detail",
query: {sn: sn},
});
},
},
],
data: [], //
total: 0, //
};
},
methods: {
//
init () {
this.getDataList();
},
mounted() {
this.init();
//
changePage (v) {
this.searchForm.pageNumber = v;
this.getDataList();
},
};
//
changePageSize (v) {
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = v;
this.getDataList();
},
//
handleSearch () {
this.searchForm.pageNumber = 1;
this.searchForm.pageSize = 10;
this.getDataList();
},
//
changeSort (e) {
this.searchForm.sort = e.key;
this.searchForm.order = e.order;
if (e.order === "normal") {
this.searchForm.order = "";
}
this.getDataList();
},
//
selectDateRange (v) {
if (v) {
this.searchForm.startDate = v[0];
this.searchForm.endDate = v[1];
}
},
//
getDataList () {
this.loading = true;
API_Order.getOrderList(this.searchForm).then((res) => {
this.loading = false;
if (res.success) {
this.data = res.result.records;
this.total = res.result.total;
}
});
this.total = this.data.length;
this.loading = false;
},
//
confirmPrice (v) {
this.$Modal.confirm({
title: "确认收款",
content: "您确定要收款吗?",
loading: true,
onOk: () => {
API_Order.orderPay(v.sn).then(res => {
if (res.success) {
this.$Message.success("收款成功")
this.getDataList()
}
this.$Modal.remove();
})
},
});
},
//
detail (v) {
console.log(v.orderType);
let sn = v.sn;
this.$router.push({
name: "order-detail",
query: { sn: sn, orderType: v.orderType },
});
},
},
mounted () {
this.init();
},
};
</script>

View File

@ -4,24 +4,12 @@
<Card style="height: 60px">
<div style="">
<Button v-if="allowOperation.editPrice" @click="modifyPrice"></Button>
<Button
v-if="allowOperation.editConsignee"
@click="editAddress"
type="primary"
ghost
>修改收货地址</Button
>
<Button v-if="allowOperation.cancel" @click="orderCancel" type="warning" ghost
>订单取消</Button
>
<Button
v-if="orderInfo.order.orderStatus === 'UNPAID'"
@click="confirmPrice"
type="primary"
>收款</Button
>
<Button v-if="allowOperation.editConsignee" @click="editAddress" type="primary" ghost>修改收货地址</Button>
<Button v-if="allowOperation.cancel" @click="orderCancel" type="warning" ghost>订单取消</Button>
<Button v-if="orderInfo.order.orderStatus === 'UNPAID'" @click="confirmPrice" type="primary"></Button>
<Button @click="orderLog" type="info" ghost>订单日志</Button>
<Button @click="printOrder" type="primary" ghost style="float:right;">打印发货单</Button>
<Button @click="printOrder" type="primary" ghost style="float:right;"
v-if="$route.query.orderType != 'VIRTUAL'">打印发货单</Button>
</div>
</Card>
<Card class="mt_10 clearfix">
@ -66,10 +54,8 @@
</div>
</div>
<div
class="div-item"
v-if="orderInfo.order.needReceipt == true && orderInfo.receipt && orderInfo.receipt.taxpayerId"
>
<div class="div-item"
v-if="orderInfo.order.needReceipt == true && orderInfo.receipt && orderInfo.receipt.taxpayerId">
<div class="div-item-left">发票税号</div>
<div class="div-item-right">
{{ orderInfo.receipt && orderInfo.receipt.taxpayerId ? orderInfo.receipt.taxpayerId : "暂无" }}
@ -81,8 +67,8 @@
<div class="div-item-right">
{{
orderInfo.receipt && orderInfo.receipt.receiptContent
? orderInfo.receipt.receiptContent
: "暂无"
? orderInfo.receipt.receiptContent
: "暂无"
}}
</div>
</div>
@ -92,8 +78,8 @@
<div class="div-item-right">
{{
orderInfo.receipt && orderInfo.receipt.receiptPrice
? orderInfo.receipt.receiptPrice
: "暂无" | unitPrice("¥")
? orderInfo.receipt.receiptPrice
: "暂无" | unitPrice("¥")
}}
</div>
</div>
@ -101,7 +87,7 @@
<div class="div-item" v-if="orderInfo.order.needReceipt == true">
<div class="div-item-left">是否开票</div>
<div class="div-item-right">
{{ orderInfo.receipt?(orderInfo.receipt.receiptStatus == 0 ? "未开" : "已开"):"空" }}
{{ orderInfo.receipt ? (orderInfo.receipt.receiptStatus == 0 ? "未开" : "已开") : "空" }}
</div>
</div>
</div>
@ -127,12 +113,12 @@
<div class="div-item-right">{{ orderInfo.order.remark }}</div>
</div>
<div class="div-item" v-if="orderInfo.order.needReceipt == false">
<!-- <div class="div-item" v-if="orderInfo.order.needReceipt == false">
<div class="div-item-left">发票信息</div>
<div class="div-item-right">暂无发票信息</div>
</div>
</div> -->
<div class="div-item" v-if="orderInfo.order.needReceipt == true">
<!-- <div class="div-item" v-if="orderInfo.order.needReceipt == true">
<div class="div-item-left">发票抬头</div>
<div class="div-item-right">
{{
@ -141,10 +127,8 @@
</div>
</div>
<div
class="div-item"
v-if="orderInfo.order.needReceipt == true && orderInfo.receipt && orderInfo.receipt.taxpayerId"
>
<div class="div-item"
v-if="orderInfo.order.needReceipt == true && orderInfo.receipt && orderInfo.receipt.taxpayerId">
<div class="div-item-left">发票税号</div>
<div class="div-item-right">
{{ orderInfo.receipt && orderInfo.receipt.taxpayerId ? orderInfo.receipt.taxpayerId : "暂无" }}
@ -156,8 +140,8 @@
<div class="div-item-right">
{{
orderInfo.receipt && orderInfo.receipt.receiptContent
? orderInfo.receipt.receiptContent
: "暂无"
? orderInfo.receipt.receiptContent
: "暂无"
}}
</div>
</div>
@ -167,8 +151,8 @@
<div class="div-item-right">
{{
orderInfo.receipt && orderInfo.receipt.receiptPrice
? orderInfo.receipt.receiptPrice
: "暂无" | unitPrice("¥")
? orderInfo.receipt.receiptPrice
: "暂无" | unitPrice("¥")
}}
</div>
</div>
@ -176,11 +160,11 @@
<div class="div-item" v-if="orderInfo.order.needReceipt == true">
<div class="div-item-left">是否开票</div>
<div class="div-item-right">
{{ orderInfo.receipt?(orderInfo.receipt.receiptStatus == 0 ? "未开" : "已开"):"空" }}
{{ orderInfo.receipt ? (orderInfo.receipt.receiptStatus == 0 ? "未开" : "已开") : "空" }}
</div>
</div>
</div> -->
<div class="div-item">
<div class="div-item" v-if="$route.query.orderType != 'VIRTUAL'">
<div class="div-item-left">配送方式</div>
<div class="div-item-right">
{{ orderInfo.deliveryMethodValue }}
@ -189,22 +173,12 @@
</div>
</Card>
<Card class="mt_10">
<Table
:loading="loading"
border
:columns="columns"
:data="data"
ref="table"
sortable="custom"
>
<Table :loading="loading" border :columns="columns" :data="data" ref="table" sortable="custom">
<!-- 商品栏目格式化 -->
<template slot="goodsSlot" slot-scope="{ row }">
<div style="margin-top: 5px; height: 80px; display: flex">
<div style="">
<img
:src="row.image"
style="height: 60px; margin-top: 1px; width: 60px"
/>
<img :src="row.image" style="height: 60px; margin-top: 1px; width: 60px" />
</div>
<div style="margin-left: 13px">
@ -216,28 +190,12 @@
{{ key }} : {{ item }}
</span>
</span>
<Poptip
trigger="hover"
style="display: block"
title="扫码在手机中查看"
transfer
>
<Poptip trigger="hover" style="display: block" title="扫码在手机中查看" transfer>
<div slot="content">
<vue-qr
:text="wapLinkTo(row.goodsId, row.skuId)"
:margin="0"
colorDark="#000"
colorLight="#fff"
:size="150"
></vue-qr>
<vue-qr :text="wapLinkTo(row.goodsId, row.skuId)" :margin="0" colorDark="#000" colorLight="#fff"
:size="150"></vue-qr>
</div>
<img
src="../../../assets/qrcode.svg"
class="hover-pointer"
width="20"
height="20"
alt=""
/>
<img src="../../../assets/qrcode.svg" class="hover-pointer" width="20" height="20" alt="" />
</Poptip>
</div>
</div>
@ -251,58 +209,56 @@
orderInfo.order.priceDetailDTO.goodsPrice | unitPrice("¥")
}}</span>
</li>
<li
v-if="
orderInfo.order.priceDetailDTO.discountPrice &&
orderInfo.order.priceDetailDTO.discountPrice > 0
"
>
<li v-if="
orderInfo.order.priceDetailDTO.discountPrice &&
orderInfo.order.priceDetailDTO.discountPrice > 0
">
<span class="label">优惠金额</span>
<span class="txt">
{{ orderInfo.order.priceDetailDTO.discountPrice | unitPrice("¥") }}
</span>
</li>
<li
v-if="
orderInfo.order.priceDetailDTO.couponPrice &&
orderInfo.order.priceDetailDTO.couponPrice > 0
"
>
<li v-if="
orderInfo.order.priceDetailDTO.couponPrice &&
orderInfo.order.priceDetailDTO.couponPrice > 0
">
<span class="label">优惠券金额</span>
<span class="txt">
{{ orderInfo.order.priceDetailDTO.couponPrice | unitPrice("¥") }}
</span>
</li>
<li v-if="orderInfo.order.priceDetailDTO.discountPriceDetail != undefined && orderInfo.order.priceDetailDTO.discountPriceDetail && orderInfo.order.priceDetailDTO.discountPriceDetail != null && orderInfo.order.priceDetailDTO.discountPriceDetail != ''">
<div class="label">
<Poptip trigger="hover" placement="left" width="200">
<Icon v-if="typeList.length > 0" type="ios-alert-outline" size="17" @click="getOrderPrice" color="#cc0000"/>
<template #content>
<div class="api" style="text-align:left;">
<table>
<thead>
<tr>
<li
v-if="orderInfo.order.priceDetailDTO.discountPriceDetail != undefined && orderInfo.order.priceDetailDTO.discountPriceDetail && orderInfo.order.priceDetailDTO.discountPriceDetail != null && orderInfo.order.priceDetailDTO.discountPriceDetail != ''">
<div class="label">
<Poptip trigger="hover" placement="left" width="200">
<Icon v-if="typeList.length > 0" type="ios-alert-outline" size="17" @click="getOrderPrice"
color="#cc0000" />
<template #content>
<div class="api" style="text-align:left;">
<table>
<thead>
<tr>
<th>优惠详情</th>
</tr>
</thead>
<tbody>
<tr v-for="(item,index) in typeList" :key="index">
<td>{{item.promotionName}}</td>
</tr>
</thead>
<tbody>
<tr v-for="(item, index) in typeList" :key="index">
<td>{{ item.promotionName }}</td>
<td>¥{{ item.discountPrice | unitPrice }}</td>
</tr>
</tbody>
</table>
</div>
</template>
</Poptip>
<span>优惠详情</span>
</div>
</tr>
</tbody>
</table>
</div>
</template>
</Poptip>
<span>优惠详情</span>
</div>
</li>
<!-- <li v-if="showPrices">
<!-- <li v-if="showPrices">
<span class="label" style="color: #cc0000;font-size: 14px;" v-if="typeList.length > 0" >优惠详情</span>
</li> -->
<!-- <li v-if="showPrices" v-for="(item,index) in typeList" :key="index">
<!-- <li v-if="showPrices" v-for="(item,index) in typeList" :key="index">
<span class="label" v-if="index == 1 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-bottom: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a></span>
<span class="txt" style="border-bottom: 1px dashed;font-size:10px !important;" v-if="index == 1 && typeList.length > 1">¥{{ item.discountPrice | unitPrice }}</span>
<span class="label" v-if="index == 0 && typeList.length > 1" style="font-size:10px !important;"><a @click="gotoHomes" style="display: inline-block;border-top: 1px dashed;color:black;width:80px;">{{item.promotionName}}</a></span>
@ -318,9 +274,7 @@
</li>
<li v-if="orderInfo.order.priceDetailDTO.updatePrice">
<span class="label">修改金额</span>
<span class="txt theme_color"
>¥{{ orderInfo.order.priceDetailDTO.updatePrice | unitPrice }}</span
>
<span class="txt theme_color">¥{{ orderInfo.order.priceDetailDTO.updatePrice | unitPrice }}</span>
</li>
<li v-if="orderInfo.order.priceDetailDTO.payPoint != 0">
<span class="label">使用积分</span>
@ -330,9 +284,7 @@
</li>
<li>
<span class="label">应付金额</span>
<span class="txt flowPrice"
>¥{{ orderInfo.order.priceDetailDTO.flowPrice | unitPrice }}</span
>
<span class="txt flowPrice">¥{{ orderInfo.order.priceDetailDTO.flowPrice | unitPrice }}</span>
</li>
</ul>
</div>
@ -345,20 +297,10 @@
<span>修改金额</span>
</p>
<div>
<Form
ref="modifyPriceForm"
:model="modifyPriceForm"
label-position="left"
:label-width="70"
:rules="modifyPriceValidate"
>
<Form ref="modifyPriceForm" :model="modifyPriceForm" label-position="left" :label-width="70"
:rules="modifyPriceValidate">
<FormItem label="订单金额" prop="price">
<InputNumber
style="width: 100px"
v-model="modifyPriceForm.price"
:min="0"
:max="999999"
></InputNumber>
<InputNumber style="width: 100px" v-model="modifyPriceForm.price" :min="0" :max="999999"></InputNumber>
<span class="ml_10"></span>
</FormItem>
</Form>
@ -375,20 +317,11 @@
<span>订单取消</span>
</p>
<div>
<Form
ref="orderCancelForm"
:model="orderCancelForm"
label-position="left"
:label-width="100"
:rules="orderCancelValidate"
>
<Form ref="orderCancelForm" :model="orderCancelForm" label-position="left" :label-width="100"
:rules="orderCancelValidate">
<FormItem label="取消原因" prop="reason">
<Input
v-model="orderCancelForm.reason"
type="textarea"
:autosize="{ minRows: 2, maxRows: 5 }"
placeholder="请输入取消原因"
></Input>
<Input v-model="orderCancelForm.reason" type="textarea" :autosize="{ minRows: 2, maxRows: 5 }"
placeholder="请输入取消原因"></Input>
</FormItem>
</Form>
</div>
@ -404,55 +337,22 @@
<span>修改收件信息</span>
</p>
<div>
<Form
ref="addressForm"
:model="addressForm"
label-position="left"
:label-width="100"
:rules="addressRule"
>
<Form ref="addressForm" :model="addressForm" label-position="left" :label-width="100" :rules="addressRule">
<FormItem label="收件人" prop="consigneeName">
<Input
v-model="addressForm.consigneeName"
size="large"
maxlength="20"
></Input>
<Input v-model="addressForm.consigneeName" size="large" maxlength="20"></Input>
</FormItem>
<FormItem label="联系方式" prop="consigneeMobile">
<Input
v-model="addressForm.consigneeMobile"
size="large"
maxlength="11"
></Input>
<Input v-model="addressForm.consigneeMobile" size="large" maxlength="11"></Input>
</FormItem>
<FormItem label="地址信息" prop="consigneeAddressPath">
<Input
v-model="addr"
disabled
style="width: 305px"
v-if="showRegion == false"
/>
<Button
v-if="showRegion == false"
@click="regionClick"
:loading="submitLoading"
type="primary"
icon="ios-create-outline"
style="margin-left: 8px"
>修改
<Input v-model="addr" disabled style="width: 305px" v-if="showRegion == false" />
<Button v-if="showRegion == false" @click="regionClick" :loading="submitLoading" type="primary"
icon="ios-create-outline" style="margin-left: 8px">修改
</Button>
<region
style="width: 400px"
@selected="selectedRegion"
v-if="showRegion == true"
/>
<region style="width: 400px" @selected="selectedRegion" v-if="showRegion == true" />
</FormItem>
<FormItem label="详细地址" prop="consigneeDetail">
<Input
v-model="addressForm.consigneeDetail"
size="large"
maxlength="50"
></Input>
<Input v-model="addressForm.consigneeDetail" size="large" maxlength="50"></Input>
</FormItem>
</Form>
</div>
@ -467,69 +367,67 @@
<span>订单日志</span>
</p>
<div class="order-log-div">
<Table
:loading="loading"
border
:columns="orderLogColumns"
:data="orderInfo.orderLogs"
ref="table"
sortable="custom"
></Table>
<Table :loading="loading" border :columns="orderLogColumns" :data="orderInfo.orderLogs" ref="table"
sortable="custom"></Table>
</div>
<div slot="footer" style="text-align: right">
<Button @click="handelCancel"></Button>
</div>
</Modal>
<Modal v-model="printModal" width="530" @on-cancel="printCancel" >
<Modal v-model="printModal" width="530" @on-cancel="printCancel">
<p slot="header" style="line-height:26px;height:26px;">
<span style="float: left;">打印发货单</span>
<Button size="small" style="margin-right:35px;float: right;padding-bottom: 2px;" @click="printHiddenInfo"><template v-if="printHiddenFlag"></template><template v-else></template></Button>
<Button size="small" style="margin-right:35px;float: right;padding-bottom: 2px;"
@click="printHiddenInfo"><template v-if="printHiddenFlag"></template><template
v-else>隐藏</template>敏感信息</Button>
</p>
<div style="max-height:500px;overflow-y:auto;overflow-x:hidden;">
<div id="printInfo">
<Row v-if="orderInfo.order.remark !== ''">
<Col span="24">
<p class="lineH30 f14">备注{{ orderInfo.order.remark }}</p>
</Col>
<p class="lineH30 f14">备注{{ orderInfo.order.remark }}</p>
</Col>
</Row>
<Row>
<Col span="12">
<p class="lineH30 f14">收件人{{ orderInfo.order.consigneeName }}</p>
</Col>
<Col span="12" v-if="orderInfo.order.consigneeMobile">
<p class="lineH30 f14" v-if="printHiddenFlag">{{ orderInfo.order.consigneeMobile.replace(/^(.{3})(?:\d+)(.{4})$/, "$1****$2") }}</p>
<p class="lineH30 f14" v-else>{{ orderInfo.order.consigneeMobile }}</p>
</Col>
<Col span="12">
<p class="lineH30 f14">收件人{{ orderInfo.order.consigneeName }}</p>
</Col>
<Col span="12" v-if="orderInfo.order.consigneeMobile">
<p class="lineH30 f14" v-if="printHiddenFlag">{{
orderInfo.order.consigneeMobile.replace(/^(.{3})(?:\d+)(.{4})$/, "$1****$2") }}</p>
<p class="lineH30 f14" v-else>{{ orderInfo.order.consigneeMobile }}</p>
</Col>
</Row>
<Row>
<Col span="24">
<p class="lineH30 f14">收货地址{{ orderInfo.order.consigneeAddressPath }}{{ orderInfo.order.consigneeDetail }}</p>
</Col>
<Col span="24">
<p class="lineH30 f14">收货地址{{ orderInfo.order.consigneeAddressPath }}{{ orderInfo.order.consigneeDetail }}
</p>
</Col>
</Row>
<Row>
<Col span="24">
<p class="printgoodtitle">商品信息</p>
<div class="printgoodinfo">
<div v-for="(item,index) in orderInfo.orderItems" :key="index" class="printgooditem">
<div class="printgoodname">
<p>{{item.goodsName}}</p>
<div class="printgoodguid">
<span v-for="(itemchild, keychild) in JSON.parse(item.specs)" :key="keychild">
<span class="printgoodguiditem" v-if="keychild != 'images'">
{{ keychild }} : {{ itemchild }}
</span>
</span>
</div>
</div>
<span class="printgoodnumber">数量{{item.num}}</span>
<Col span="24">
<p class="printgoodtitle">商品信息</p>
<div class="printgoodinfo">
<div v-for="(item, index) in orderInfo.orderItems" :key="index" class="printgooditem">
<div class="printgoodname">
<p>{{ item.goodsName }}</p>
<div class="printgoodguid">
<span v-for="(itemchild, keychild) in JSON.parse(item.specs)" :key="keychild">
<span class="printgoodguiditem" v-if="keychild != 'images'">
{{ keychild }} : {{ itemchild }}
</span>
</span>
</div>
</div>
</Col>
<span class="printgoodnumber">数量{{ item.num }}</span>
</div>
</div>
</Col>
</Row>
</div>
</div>
<div slot="footer" style="text-align: right">
<Button @click="printModal = false">关闭</Button>
<Button type="primary" v-print="printInfoObj"></Button>
@ -549,15 +447,15 @@ export default {
region,
"vue-qr": vueQr,
},
data() {
data () {
return {
typeList:[],
showPrices:false,
printHiddenFlag:false,//
printInfoObj:{
typeList: [],
showPrices: false,
printHiddenFlag: false,//
printInfoObj: {
id: "printInfo",//id #
popTitle:'&nbsp;',// undefined 使html
extraHead:'',//
popTitle: '&nbsp;',// undefined 使html
extraHead: '',//
},
loading: false, //
submitLoading: false, //
@ -612,7 +510,7 @@ export default {
reason: [{ required: true, message: "取消原因不能为空", trigger: "blur" }],
},
addressModal: false, //
printModal:false,
printModal: false,
//
addressForm: {
consigneeName: "",
@ -732,21 +630,21 @@ export default {
};
},
watch: {
$route(to, from) {
$route (to, from) {
this.$router.go(0);
},
},
methods: {
gotoHomes(){
gotoHomes () {
return false
},
},
//
regionClick() {
regionClick () {
this.showRegion = true;
this.regionId = "";
},
//
confirmPrice() {
confirmPrice () {
this.$Modal.confirm({
title: "提示",
content:
@ -763,30 +661,30 @@ export default {
},
});
},
getOrderPrice(){
if(this.showPrices){
getOrderPrice () {
if (this.showPrices) {
this.showPrices = false
}else if(!this.showPrices){
} else if (!this.showPrices) {
this.showPrices = true
}
},
getContentPrice(){
for (let i = 0; i < this.typeList.length; i++) {
for (let j = i + 1; j < this.typeList.length; j++) {
if (this.typeList[i].promotionId === this.typeList[j].promotionId) {
this.typeList[i].discountPrice = this.typeList[i].discountPrice + this.typeList[j].discountPrice
this.typeList.splice(j, 1)
}
getContentPrice () {
for (let i = 0; i < this.typeList.length; i++) {
for (let j = i + 1; j < this.typeList.length; j++) {
if (this.typeList[i].promotionId === this.typeList[j].promotionId) {
this.typeList[i].discountPrice = this.typeList[i].discountPrice + this.typeList[j].discountPrice
this.typeList.splice(j, 1)
}
}
console.log(this.typeList)
if(this.typeList.length >= 3){
console.log(123123)
this.getContentPrice()
}
},
}
console.log(this.typeList)
if (this.typeList.length >= 3) {
console.log(123123)
this.getContentPrice()
}
},
//
getDataList() {
getDataList () {
this.loading = true;
API_Order.orderDetail(this.sn).then((res) => {
this.loading = false;
@ -800,13 +698,13 @@ export default {
}
});
},
modifyPrice() {
modifyPrice () {
//
this.modifyPriceForm.price = this.orderInfo.order.flowPrice;
this.modal = true;
},
//
modifyPriceSubmit() {
modifyPriceSubmit () {
this.$refs.modifyPriceForm.validate((valid) => {
if (valid) {
API_Order.updateOrderPrice(this.sn, this.modifyPriceForm).then((res) => {
@ -820,16 +718,16 @@ export default {
});
},
//
selectedRegion(val) {
selectedRegion (val) {
this.addr = val[1];
this.regionId = val[0];
},
//
orderCancel() {
orderCancel () {
this.orderCancelModal = true;
},
//
orderCancelSubmit() {
orderCancelSubmit () {
this.$refs.orderCancelForm.validate((valid) => {
if (valid) {
API_Order.orderCancel(this.sn, this.orderCancelForm).then((res) => {
@ -843,25 +741,25 @@ export default {
});
},
//
orderLog() {
orderLog () {
this.orderLogModal = true;
},
//
handelCancel() {
handelCancel () {
this.orderLogModal = false;
},
//
printOrder(){
printOrder () {
this.printModal = true;
},
printHiddenInfo(){
printHiddenInfo () {
this.printHiddenFlag = !this.printHiddenFlag;
},
printCancel(){
printCancel () {
// this.printHiddenFlag = false;
},
//
editAddress() {
editAddress () {
this.addressModal = true;
this.showRegion = false;
this.addr = this.orderInfo.order.consigneeAddressPath;
@ -873,7 +771,7 @@ export default {
this.addressForm.consigneeAddressIdPath = this.orderInfo.order.consigneeAddressIdPath;
},
//
editAddressSubmit() {
editAddressSubmit () {
if (this.regionId == "") {
this.$Message.error("请选择地址");
return;
@ -893,16 +791,17 @@ export default {
});
},
},
mounted() {
mounted () {
this.sn = this.$route.query.sn;
this.getDataList();
},
};
</script>
<style lang="scss">
.lineH30{
.lineH30 {
line-height: 30px;
}
.order-log-div {
line-height: 30px;
overflow-y: scroll;
@ -939,11 +838,11 @@ export default {
line-height: 35px;
display: flex;
> .div-item-left {
>.div-item-left {
width: 80px;
}
> .div-item-right {
>.div-item-right {
flex: 1;
word-break: break-all;
}
@ -1000,24 +899,28 @@ export default {
}
}
}
.f14{
.f14 {
font-size: 14px;
color: #333;
}
.printgoodtitle{
.printgoodtitle {
font-size: 14px;
line-height: 1.5;
margin-top: 15px;
color: #333;
}
.printgoodinfo{
.printgoodinfo {
// font-size: 14px;
// background: #f2f2f2;
// border-bottom:2px solid #333 ;
padding: 10px;
overflow: hidden;
color: #333;
.printgooditem{
.printgooditem {
border-bottom: 1px solid #e8eaec;
display: flex;
align-items: flex-start;
@ -1025,35 +928,43 @@ export default {
line-height: 30px;
margin-bottom: 10px;
padding-bottom: 10px;
.printgoodname{
.printgoodname {
flex: 1;
overflow: hidden;
.printgoodguid{
.printgoodguid {
font-size: 12px;
color:#999999;
line-height:1.5;
.printgoodguiditem{
color: #999999;
line-height: 1.5;
.printgoodguiditem {
margin-right: 10px;
}
}
}
.printgoodprice{
.printgoodprice {
width: 135px;
margin-left: 15px;
}
.printgoodnumber{
.printgoodnumber {
width: 85px;
margin-left: 15px;
}
}
}
@media print {
@page{
size: auto;
@page {
size: auto;
margin: 3mm;
}
html,body{
height:inherit;
html,
body {
height: inherit;
}
}
</style>

View File

@ -130,11 +130,11 @@
<div class="ant-col-md-6">
<p class="item">
<span class="label">法人姓名</span>
<span class="info">{{storeInfo.legalName}}</span>
<span class="info">{{storeInfo.legalName}}</span>
</p>
<p class="item">
<span class="label">法人身份证</span>
<span class="info">{{storeInfo.legalId}}</span>
<span class="info">{{storeInfo.legalId}}</span>
</p>
<p class="item">
<span class="label">身份证照片</span>

View File

@ -2,7 +2,7 @@
<div class="layout">
<Form ref="formValidate" :label-width="150" label-position="right" :model="formValidate" :rules="ruleValidate">
<FormItem label="平台" prop="endPoint">
<FormItem label="平台" >
<RadioGroup v-model="formValidate.type" type="button">
<Radio label="ALI_OSS">阿里OSS</Radio>
<Radio label="MINIO">MINIO</Radio>
@ -11,68 +11,68 @@
</RadioGroup>
</FormItem>
<!-- 阿里云存储-->
<FormItem v-if="formValidate.type==='ALI_OSS'" label="节点" prop="aliyunOSSEndPoint">
<FormItem v-if="formValidate.type==='ALI_OSS'" key="aliyunOSSEndPoint" label="节点" prop="aliyunOSSEndPoint">
<Input v-model="formValidate.aliyunOSSEndPoint"/>
</FormItem>
<FormItem v-if="formValidate.type==='ALI_OSS'" label="储存空间" class="label-item" prop="aliyunOSSBucketName">
<FormItem v-if="formValidate.type==='ALI_OSS'" key="aliyunOSSBucketName" label="储存空间" class="label-item" prop="aliyunOSSBucketName">
<Input v-model="formValidate.aliyunOSSBucketName"/>
</FormItem>
<FormItem v-if="formValidate.type==='ALI_OSS'" label="存放路径路径" prop="aliyunOSSPicLocation">
<FormItem v-if="formValidate.type==='ALI_OSS'" key="aliyunOSSPicLocation" label="存放路径路径" prop="aliyunOSSPicLocation">
<Input v-model="formValidate.aliyunOSSPicLocation"/>
</FormItem>
<FormItem v-if="formValidate.type==='ALI_OSS'" label="密钥id" prop="aliyunOSSAccessKeyId">
<FormItem v-if="formValidate.type==='ALI_OSS'" key="aliyunOSSAccessKeyId" label="密钥id" prop="aliyunOSSAccessKeyId">
<Input v-model="formValidate.aliyunOSSAccessKeyId"/>
</FormItem>
<FormItem v-if="formValidate.type==='ALI_OSS'" label="密钥" prop="aliyunOSSAccessKeySecret">
<FormItem v-if="formValidate.type==='ALI_OSS'" key="aliyunOSSAccessKeySecret" label="密钥" prop="aliyunOSSAccessKeySecret">
<Input v-model="formValidate.aliyunOSSAccessKeySecret"/>
</FormItem>
<!-- MINIO存储-->
<FormItem v-if="formValidate.type==='MINIO'" label="访问地址" prop="m_frontUrl">
<FormItem v-if="formValidate.type==='MINIO'" label="访问地址" key="m_frontUrl" prop="m_frontUrl">
<Input v-model="formValidate.m_frontUrl"/>
<span class="desc">配置MINIO nginx前端访问转发地址一般为完整域名例如https://minio.pickmall.cn</span>
</FormItem>
<FormItem v-if="formValidate.type==='MINIO'" label="endpoint" prop="m_endpoint">
<FormItem v-if="formValidate.type==='MINIO'" label="endpoint" key="m_endpoint" prop="m_endpoint">
<Input v-model="formValidate.m_endpoint"/>
</FormItem>
<FormItem v-if="formValidate.type==='MINIO'" label="accessKey" class="label-item" prop="m_accessKey">
<FormItem v-if="formValidate.type==='MINIO'" label="accessKey" key="m_accessKey" class="label-item" prop="m_accessKey">
<Input v-model="formValidate.m_accessKey"/>
</FormItem>
<FormItem v-if="formValidate.type==='MINIO'" label="secretKey" prop="bucketName">
<FormItem v-if="formValidate.type==='MINIO'" label="secretKey" key="m_secretKey" prop="m_secretKey">
<Input v-model="formValidate.m_secretKey"/>
</FormItem>
<FormItem v-if="formValidate.type==='MINIO'" label="bucketName" prop="accessKeyId">
<FormItem v-if="formValidate.type==='MINIO'" label="bucketName" key="m_bucketName" prop="m_bucketName">
<Input v-model="formValidate.m_bucketName"/>
</FormItem>
<!-- 华为云存储-->
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="发起者的Access Key" prop="huaweicloudOBSAccessKey">
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="发起者的Access Key" key="huaweicloudOBSAccessKey" prop="huaweicloudOBSAccessKey">
<Input v-model="formValidate.huaweicloudOBSAccessKey"/>
</FormItem>
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="密钥" class="label-item" prop="huaweicloudOBSSecretKey">
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="密钥" class="label-item" key="huaweicloudOBSSecretKey" prop="huaweicloudOBSSecretKey">
<Input v-model="formValidate.huaweicloudOBSSecretKey"/>
</FormItem>
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="节点" prop="huaweicloudOBSEndPoint">
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="节点" key="huaweicloudOBSEndPoint" prop="huaweicloudOBSEndPoint">
<Input v-model="formValidate.huaweicloudOBSEndPoint"/>
</FormItem>
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="桶" prop="huaweicloudOBSBucketName">
<FormItem v-if="formValidate.type==='HUAWEI_OBS'" label="桶" key="huaweicloudOBSBucketName" prop="huaweicloudOBSBucketName">
<Input v-model="formValidate.huaweicloudOBSBucketName"/>
</FormItem>
<!-- 腾讯云存储-->
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="用户的SecretId" prop="tencentCOSSecretId">
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="用户的SecretId" key="tencentCOSSecretId" prop="tencentCOSSecretId">
<Input v-model="formValidate.tencentCOSSecretId"/>
</FormItem>
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="用户的SecretKey" class="label-item" prop="tencentCOSSecretKey">
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="用户的SecretKey" key="tencentCOSSecretKey" class="label-item" prop="tencentCOSSecretKey">
<Input v-model="formValidate.tencentCOSSecretKey"/>
</FormItem>
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="bucket的地域" prop="tencentCOSRegion">
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="bucket的地域" key="tencentCOSRegion" prop="tencentCOSRegion">
<Input v-model="formValidate.tencentCOSRegion"/>
</FormItem>
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="bucket" prop="tencentCOSBucket">
<FormItem v-if="formValidate.type==='TENCENT_COS'" label="bucket" key="tencentCOSBucket" prop="tencentCOSBucket">
<Input v-model="formValidate.tencentCOSBucket"/>
</FormItem>
@ -179,3 +179,4 @@ export default {
color: #999;
}
</style>

View File

@ -487,7 +487,7 @@ export default {
liliMap,
region,
},
data() {
data () {
return {
typeList: [],
showPrices: false,
@ -693,27 +693,27 @@ export default {
},
methods: {
//
regionClick() {
regionClick () {
this.showRegion = true;
this.regionId = "";
},
//
orderTake() {
orderTake () {
this.orderTakeForm.qrCode = this.orderInfo.order.verificationCode;
this.orderTakeModal = true;
},
//
printOrder() {
printOrder () {
this.printModal = true;
},
printHiddenInfo() {
printHiddenInfo () {
this.printHiddenFlag = !this.printHiddenFlag;
},
printCancel() {
printCancel () {
// this.printHiddenFlag = false;
},
//
orderTakeSubmit() {
orderTakeSubmit () {
this.$refs.orderTakeForm.validate((valid) => {
if (valid) {
API_Order.orderTake(this.sn, this.orderTakeForm.qrCode).then(
@ -728,14 +728,14 @@ export default {
}
});
},
getOrderPrice() {
getOrderPrice () {
if (this.showPrices) {
this.showPrices = false
} else if (!this.showPrices) {
this.showPrices = true
}
},
getContentPrice() {
getContentPrice () {
for (let i = 0; i < this.typeList.length; i++) {
for (let j = i + 1; j < this.typeList.length; j++) {
if (this.typeList[i].promotionId === this.typeList[j].promotionId) {
@ -751,7 +751,7 @@ export default {
}
},
//
getDataDetail() {
getDataDetail () {
this.loading = true;
API_Order.getOrderDetail(this.sn).then((res) => {
this.loading = false;
@ -766,7 +766,7 @@ export default {
}
});
},
Toprint() {
Toprint () {
this.facesheetFlag = true;
API_Logistics.getCheckedOn().then(res => {
if (res.success) {
@ -776,13 +776,13 @@ export default {
});
},
//
modifyPrice() {
modifyPrice () {
//
this.modifyPriceForm.orderPrice = this.orderInfo.order.flowPrice;
this.modal = true;
},
//
modifyPriceSubmit() {
modifyPriceSubmit () {
this.$refs.modifyPriceForm.validate((valid) => {
if (valid) {
API_Order.modifyOrderPrice(this.sn, this.modifyPriceForm).then(
@ -798,12 +798,12 @@ export default {
});
},
//
selectedRegion(val) {
selectedRegion (val) {
this.region = val[1];
this.regionId = val[0];
},
//
logistics() {
logistics () {
this.logisticsModal = true;
API_Order.getTraces(this.sn).then((res) => {
if (res.success && res.result != null) {
@ -812,7 +812,7 @@ export default {
});
},
//
orderDeliver() {
orderDeliver () {
this.facesheetFlag = false
if (this.logisticsType == 'SHUNFENG') {
this.$Modal.confirm({
@ -839,7 +839,7 @@ export default {
}
},
//
sfPrint() {
sfPrint () {
API_Order.getOrderFaceSheet(this.sn, this.faceSheetForm).then(res => {
if (res.success) {
let headers = {
@ -869,13 +869,13 @@ export default {
}
})
},
Toprints() {
Toprints () {
if (this.form.logisticsId != null && this.form.logisticsId != '') {
this.orderDeliverModal = false;
}
},
//
orderDeliverySubmit() {
orderDeliverySubmit () {
if (this.facesheetFlag) {
this.$refs['faceSheetForm'].validate((valid) => {
if (valid) {
@ -904,7 +904,7 @@ export default {
}
},
//
editAddress() {
editAddress () {
this.addressModal = true;
this.showRegion = false;
this.regionId = this.orderInfo.order.consigneeAddressIdPath;
@ -918,7 +918,7 @@ export default {
this.orderInfo.order.consigneeAddressIdPath;
},
//
editAddressSubmit() {
editAddressSubmit () {
if (this.regionId == "") {
this.$Message.error("请选择地址");
return;
@ -940,7 +940,7 @@ export default {
});
},
getLogisticsSetting() {
getLogisticsSetting () {
API_Logistics.getLogisticsSetting().then(res => {
if (res.success) {
this.logisticsType = res.result;
@ -949,13 +949,13 @@ export default {
},
},
mounted() {
mounted () {
this.sn = this.$route.query.sn;
this.getDataDetail();
this.getLogisticsSetting();
},
// keepAlivetrue
beforeRouteLeave(to, from, next) {
beforeRouteLeave (to, from, next) {
if (to.name === 'orderList' || to.name === 'virtualOrderList') {
to.meta.keepAlive = true
}