提交 ab97569e 编写于 作者: minghao.wu's avatar minghao.wu

Merge branch 'dev-expressNo-0702' into 'release'

Dev express no 0702

See merge request com.pica.cloud.education.frontend/pica.cloud.web-education-admin!274
......@@ -57,6 +57,16 @@ export const updateExpress = (params) => {
})
};
export const updateExpressNo = (params) => {
return fetch({
headers,
url: getBaseUrl(`store/orders/admin/${params.orderId}/updateExpressNo`),
method: 'post',
data: params,
description: '更新物流单号',
})
};
export const queryShopAuth = (params) => {
return fetch({
......
......@@ -29,6 +29,9 @@
<div v-if="storeType == 1">
<p>物流公司:{{orderDetailData.expressName}}</p>
<p>快递单号:{{orderDetailData.expressNo}}</p>
<el-button type="text" @click="copyTxt">复制</el-button>
<el-button type="text" @click="updateOrderNo">修改物流单号</el-button>
<input type="text" id="copyInput" class="hidden-input" />
</div>
<div v-if="storeType == 2">
<p>配送员姓名:{{orderDetailData.sender}}</p>
......@@ -114,12 +117,34 @@
@closeSendSet="closeSendSet">
</send-set-dialog>
</div>
<el-dialog
class="tui-dialog"
title="修改物流单号"
:visible="showOrderNoFlag"
@close="showOrderNoFlag = false"
width="600px"
>
<el-form ref="orderDetailData" :model="orderDetailData" :rules="rulesExpress" label-width="120px">
<el-form-item label="快递公司" prop="expressName">
<el-input v-model="orderDetailData.expressName"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="expressNo">
<el-input v-model="orderDetailData.expressNo"></el-input>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="orderDetailData.remark"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="confirmExpressNo">完成</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
// import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue";
import { queryOrderDetail } from '@/utils/shop';
import { queryOrderDetail, updateExpressNo } from '@/utils/shop';
import SendSetDialog from "@/components/shop/send-set-dialog";
export default {
components: {
......@@ -157,10 +182,19 @@
brokerName:'',//药代名称
// showStatus: null,//订单展示状态,1已完成,2已发货,3待发货,4待支付,5交易关闭
},
rulesExpress: {
expressName: [
{ required: true, message: '请输入快递公司', trigger: "blur"},
],
expressNo: [
{ required: true, message: '请输入快递单号', trigger: "blur"},
]
},
tableData: [],
sendGoodsDialog: false,
dialogTitle: '',
sendSetForm: {},
showOrderNoFlag: false,
}
},
created() {
......@@ -209,6 +243,63 @@
}
})
},
// 修改物流单号
updateOrderNo(){
this.showOrderNoFlag = true;
},
confirmExpressNo() {
if (this.orderDetailData.expressName == null || this.orderDetailData.expressName == "") {
this.$message.error("请填写快递公司");
return;
}
if (this.orderDetailData.expressNo == null || this.orderDetailData.expressNo == "") {
this.$message.error("请填写快递单号");
return;
}
updateExpressNo({
orderId: this.orderId,
expressName: this.orderDetailData.expressName,
expressNo: this.orderDetailData.expressNo,
remark: this.orderDetailData.remark
}).then(res => {
if (res.code == '000000') {
this.$message.success('操作成功');
this.showOrderNoFlag = false;
this.searchList();
} else {
this.$message.success(`操作失败:${res.message},请重试`);
}
});
},
copyTxt() {
let txt = document.getElementById("copyInput");
txt.value = this.orderDetailData.expressNo;
// if (navigator.userAgent.match(/(iPhone|iPod|iPad|Mac);?/i)) {
if (navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") < 1) {
var el = document.createElement('input');
el.value = txt.value;//要复制的内容
el.style.opacity = '0';
document.body.appendChild(el);
var editable = el.contentEditable;
var readOnly = el.readOnly;
el.contentEditable = true;
el.readOnly = false;
const range = document.createRange();
range.selectNodeContents(el);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
el.setSelectionRange(0, 999999);
el.contentEditable = editable;
el.readOnly = readOnly;
var ret = document.execCommand('copy');
el.blur();
} else {
txt.select(); //选择对象
document.execCommand("copy");
}
this.$message.success('复制成功');
},
},
filters: {
toFixed2: function (value) {
......
......@@ -228,7 +228,8 @@
<div class="view-content">
<i class="el-icon-truck" style="font-size: 18px"></i><span class="send-status">已发货</span>
<span class="view-number">{{logisticeInfo}}</span>
<el-button type="text" @click="copyTxt">复制</el-button>
<el-button type="text" @click="copyTxt">复制单号</el-button>
<el-button type="text" @click="updateOrderNo">修改物流单号</el-button>
</div>
<input type="text" id="copyInput" class="hidden-input" />
<span slot="footer" class="dialog-footer">
......@@ -289,6 +290,30 @@
<el-button size="small" type="primary" @click="confirmTui">完成</el-button>
</span>
</el-dialog>
<el-dialog
class="tui-dialog"
title="修改物流单号"
:visible="showOrderNoFlag"
@close="showOrderNoFlag = false"
width="600px"
>
<el-form ref="expressForm" :rules="rulesExpress" :model="expressForm" label-width="120px">
<el-form-item label="快递公司" prop="company">
<el-input v-model="expressForm.company"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="no">
<el-input v-model="expressForm.no"></el-input>
</el-form-item>
<el-form-item label="备注" prop="extendMessage">
<el-input v-model="expressForm.extendMessage"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="confirmExpressNo">完成</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
......@@ -296,7 +321,7 @@
import BreadCrumb from "@/components/breadcrumb.vue";
import SendSetDialog from "@/components/shop/send-set-dialog";
import { getOrdersExportUrl } from "@/utils/yqrange/yqrangeApi";
import { queryOrderList, updateExpress, refundApply, brokerListAll, brokerOwnerListAll} from "@/utils/shop";
import { queryOrderList, updateExpress, refundApply, brokerListAll, brokerOwnerListAll, updateExpressNo} from "@/utils/shop";
import { toDecimal2 } from '@/utils';
export default {
......@@ -358,6 +383,20 @@
type: 0,
money: ''
},
expressForm: {
order: null,
company: '',
no: '',
extendMessage: ''
},
rulesExpress: {
company: [
{ required: true, message: '请输入快递公司', trigger: "blur"},
],
no: [
{ required: true, message: '请输入快递单号', trigger: "blur"},
]
},
tuiTypes: [
{
label: '仅退款,无需退货',
......@@ -389,6 +428,7 @@
ownerId:'',
brokerList:[],
brokerOwnerList:[],
showOrderNoFlag:false,
pickerOptions1: {
disabledDate: time => {
return (
......@@ -516,6 +556,10 @@
viewLogistics(row) {
this.viewLogisticsDialog = true;
this.logisticeInfo = `${row.expressName} ${row.expressNo}`;
this.expressForm.order = row;
this.expressForm.company = `${row.expressName}`;
this.expressForm.no = `${row.expressNo}`;
this.expressForm.extendMessage = `${row.remark}`
},
cancelView() {
this.viewLogisticsDialog = false;
......@@ -602,6 +646,36 @@
}
});
},
// 修改物流单号
updateOrderNo(){
this.viewLogisticsDialog = false;
this.showOrderNoFlag = true;
},
confirmExpressNo() {
if (this.expressForm.company == null || this.expressForm.company == "") {
this.$message.error("请填写快递公司");
return;
}
if (this.expressForm.no == null || this.expressForm.no == "") {
this.$message.error("请填写快递单号");
return;
}
updateExpressNo({
orderId: this.expressForm.order.id,
expressName: this.expressForm.company,
expressNo: this.expressForm.no,
remark: this.expressForm.extendMessage
}).then(res => {
if (res.code == '000000') {
this.$message.success('操作成功');
this.showOrderNoFlag = false;
this.searchList();
} else {
this.$message.success(`操作失败:${res.message},请重试`);
}
});
},
exportOrder() {
const { goodsName, orderNo, receiver, orderDate, storeId, brokerId, ownerId, prescriberName, orderBeginTime, orderEndTime} = this.searchForm;
......@@ -637,8 +711,7 @@
changeOwner(data) {
this.ownerId = data;
this.brokerListAll();
}
},
},
filters: {
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册