Commit deaa98ed authored by 黄媛媛's avatar 黄媛媛

update

parent d4f5dadc
......@@ -127,7 +127,11 @@
<div>{{item.ReOrderStatusName}}</div>
</div>
<div flex="main:center cross:center" class="app-order-info" style="border-right:1px solid #EBEEF5; width: 8%;">
<div>实付金额:¥{{item.Income-item.RefundActual}}</div>
<div flex="dir:top">
<div>实付金额:¥{{item.Income}}</div>
<div v-if="item.ReOrderStatus==3">申请退款:¥{{item.Refund}}</div>
</div>
</div>
<div flex="cross:center" class="app-order-info" style="width: 8%;">
<el-tooltip class="item" effect="dark" :content="item.Remark" placement="top">
......@@ -136,13 +140,38 @@
</div>
<div flex="main:center cross:center" class="app-order-info" style="width: 18%;">
<el-tooltip class="item" effect="dark" content="同意" placement="top">
<img @click="setOrder(item,1)" v-if="msg.SelectStatus==1" style="margin-right:5px" src="../../assets/img/userman/pass.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="拒绝" placement="top">
<img @click="setOrder(item,2)" v-if="msg.SelectStatus==1" style="margin-right:5px" src="../../assets/img/userman/nopass.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="发货" placement="top">
<img v-if="item.Type==2 && item.ReOrderStatus==3" @click="fhOpenDig(item)" style="margin-right:5px" src="../../assets/img/userman/confirm.png" alt="">
</el-tooltip>
<!-- 卖家收货 -->
<el-tooltip class="item" effect="dark" content="收货" placement="top">
<img v-if="item.Type==1 && item.ReOrderStatus==3" @click="shouHuo(item)" style="margin-right:5px" src="../../assets/img/userman/confirm.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="打款" placement="top">
<img @click="dkOpenDig(item)" v-if="item.Type==1 && item.ReOrderStatus==4" style="margin-right:5px" src="../../assets/img/userman/pay.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="售后详情" placement="top">
<img @click="CommonJump('salesOrderDetails',{ReOrderId:item.ReOrderId})" style="margin-right:5px" src="../../assets/img/userman/refund-detail.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="订单详情" placement="top">
<img @click="CommonJump('orderDetails',{OrderId:item.OrderModel.OrderId})" style="margin-right:5px" src="../../assets/img/userman/detail.png" alt="">
</el-tooltip>
</div>
</div>
<div class="card-footer">
<div>
<div flex="dir:left">
<div class="address-box">收货人: {{item.Consignee}} 电话:{{item.Mobile}} 地址:{{item.ShoppingAddress}}</div>
<button v-if="item.OrderStatus==2" @click="ExitshAdress(item)" type="button" class="el-button el-button--text is-circle"><i class="el-icon-edit"></i></button>
<div class="address-box">收货人: {{item.OrderModel.Consignee}}
电话:{{item.OrderModel.Mobile}} 地址:
{{item.OrderModel.DistrictAddress}}
{{item.OrderModel.ShoppingAddress}}</div>
<button @click="ExitshAdress(item.OrderModel)" type="button" class="el-button el-button--text is-circle"><i class="el-icon-edit"></i></button>
</div>
</div>
<div v-if="item.Remark!=''" class="seller-remark">商家备注:{{item.Remark}}</div>
......@@ -219,8 +248,8 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="详细地址" prop="ShippingAddress">
<el-input size="small" v-model="shMsg.ShippingAddress"></el-input>
<el-form-item label="详细地址" prop="ShoppingAddress">
<el-input size="small" v-model="shMsg.ShoppingAddress"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -228,6 +257,89 @@
<el-button size="small" type="primary" @click="shsubmitForm('shMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 打款 -->
<el-dialog
title="确认已收到货"
:visible.sync="dkDig"
width="600px">
<div flex="main:center cross:center" style="text-align: center; font-size: 16px;">
<i class="el-icon-warning" style="color: rgb(230, 162, 60); margin-right: 10px; font-size: 24px;"></i>
<span class="span-label">确认收货后,退款金额</span>
<el-input class="w100" size="small" v-model="dkMsg.Refund" style="margin:0 6px" type="number" min="1" placeholder="请输入内容"></el-input>
<span class="span-label">元将直接返还给用户!</span>
</div>
<div style="text-align:right;margin-top:20px">
<el-button size="small" @click="dkDig=false">取消</el-button>
<el-button size="small" type="primary" @click="SaleForRefunds">确定</el-button>
</div>
</el-dialog>
<!-- 发货 -->
<el-dialog custom-class="app-send" title="发货" :visible.sync="fhDig" width="35%">
<div class="title-box">
<span class="text">选择发货商品</span>
<span>(默认全选)</span>
</div>
<el-table ref="fahuoTable" :data="fahuoList" @selection-change="TableSelectChange" style="width: 100%">
<!-- <el-table-column type="selection" width="55"> -->
<!-- </el-table-column> -->
<el-table-column prop="id" label="图片" width="60">
<template slot-scope="scope">
<img style="width:30px;height:30px" :src="domainManager().ImageUrl+scope.row.CoverImagePath" alt="">
</template>
</el-table-column>
<el-table-column prop="GoodsName" label="名称" width="314">
<template slot-scope="scope">
<el-tag v-if="scope.row.IsBindExpress==1" style="margin-left:5px" size="small" type="success">已发货</el-tag>
<span>{{scope.row.GoodsName}}</span>
</template>
</el-table-column>
<el-table-column prop="ReNumber" label="数量" width="80">
</el-table-column>
<el-table-column prop="Specification" label="规格">
<template slot-scope="scope">
<span v-for="(item,index) in scope.row.SpecificationList" :key="index" style="margin-left:5px">
{{item}}
</span>
</template>
</el-table-column>
</el-table>
<div class="title-box"><span class="text">物流信息</span></div>
<el-form :model="fhMsg" ref="fhMsg" :rules="fhrules" label-width="130px">
<el-form-item label="物流快递">
<el-radio v-model="fhMsg.Type" :label="1">快递</el-radio>
<el-radio v-model="fhMsg.Type" :label="2">其他方式</el-radio>
</el-form-item>
<template v-if="fhMsg.Type==1">
<el-form-item label="快递公司" prop="ExpressId">
<el-select class="w200" size="small" v-model="fhMsg.ExpressId" filterable placeholder="请选择">
<el-option v-for="item in ExpressList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="收件人邮编">
<el-input type="number" min="1" size="small" v-model="fhMsg.PostCode"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="ExpressNumber">
<el-input size="small" v-model="fhMsg.ExpressNumber">
<!-- <el-button slot="append"> 获取面单</el-button> -->
</el-input>
</el-form-item>
<el-form-item label="商家留言">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
<template v-if="fhMsg.Type==2">
<el-form-item label="物流内容">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="fhDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="FhsubmitForm('fhMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -302,13 +414,13 @@ export default {
Province:'',
City:'',
District:'',
ShippingAddress:'',
ShoppingAddress:'',
},
shMsgrule:{
Province: [
{ required: true, message: '请选择省', trigger: 'change' }
],
ShippingAddress: [
ShoppingAddress: [
{ required: true, message: '请输入详细地址', trigger: 'blur' }
],
Mobile: [
......@@ -318,6 +430,31 @@ export default {
{ required: true, message: '请输入收件人', trigger: 'blur' }
],
},
dkMsg:{},
dkDig:false,
fhrules: {
ExpressId: [{
required: true,
message: '请选择快递公司',
trigger: 'change'
}],
ExpressNumber: [{
required: true,
message: '请输入快递单号',
trigger: 'blur'
}],
},
fhMsg: {
AfterSaleOrderId: '',
Type: 1,
ExpressId: '',
PostCode: '',
ExpressNumber: '',
Remark: '',
},
fahuoList: [],
fhDig: false,
ExpressList:[],
}
},
created(){
......@@ -327,9 +464,148 @@ export default {
this.getOrderStatus();
this.getDelivery();
this.getOrderType();
this.getProvince();
this.getExpressInfo();
},
mounted(){},
methods:{
// 卖家收货
shouHuo(item){
let that=this;
that.$confirm("确认收货?", '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/SetOrderReceivingForReturnsAndRefunds',{ReOrderId:item.ReOrderId},
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
// 修改收货地址
shsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.apipost('/api/order/SetOrderShopingAddress', this.shMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.shDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
FhsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
if (this.fhMsg.Type == 2) {
this.fhMsg.ExpressId = "";
this.fhMsg.PostCode = "";
this.fhMsg.ExpressNumber = "";
}
this.apipost('/api/order/SetOrderAfterSaleSendGoods', this.fhMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.fhDig = false;
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
TableSelectChange(val){},
// 发货f
fhOpenDig(item){
this.fhMsg.AfterSaleOrderId=item.ReOrderId;
this.fahuoList=[];
item.OrderDetailModel.ReNumber=item.ReNumber;
this.fahuoList.push(item.OrderDetailModel);
this.fhDig=true;
},
// 售后订单审核
setOrder(item,num){
let msg={
ReOrderId:item.ReOrderId,
Type:num
}
let str="";
let that=this;
if(num==1){
str="同意,是否继续";
}
if(num==2){
str="拒绝,是否继续";
}
that.$confirm(str, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/SetOrderAfterSaleAudit',msg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
SaleForRefunds(){
this.apipost('/api/order/SetOrderAfterSaleForRefunds',this.dkMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.dkDig=false;
} else {
this.Error(res.data.message);
}
},
null
);
},
// 打款
dkOpenDig(item){
this.dkMsg={
Refund:item.Refund,
ReOrderId:item.ReOrderId
};
this.dkDig=true;
},
// 修改收货地址
ExitshAdress(item){
this.shDig=true;
......@@ -340,7 +616,7 @@ export default {
Province:item.Province,
City:item.City,
District:item.District,
ShippingAddress:item.ShippingAddress,
ShoppingAddress:item.ShoppingAddress,
}
this.getCity(item.Province);
this.getArea(item.City);
......@@ -419,12 +695,12 @@ export default {
this.JavaGetLocalFile(
"/api/order/GetDistributionOrdersToExcel",
msg,
"分销订单列表.xls"
"售后订单.xls"
);
},
getDown(){
this.cityOptions=[];
this.apipost("/api/order/GetDistributionOrdersExportEnumList",{}, res => {
this.apipost("/api/order/GetOrderAfterSaleExportEnumList",{}, res => {
this.cities=res.data.data;
let data=res.data.data;
data.forEach(item=>{
......@@ -523,6 +799,16 @@ export default {
}
})
},
// 快递公司
getExpressInfo() {
this.apipost("/api/MallBase/GetExpressInfo", {}, res => {
if (res.data.resultCode == 1) {
this.ExpressList = res.data.data;
} else {
this.Info(res.data.message);
}
})
},
},
};
......
<template>
<div class="evalTemplate evaluationMan">
<div class="head-title">
评价管理
<el-button @click="addTemplate" style="float:right;margin-left:10px" size="small" type="primary">添加客户评价</el-button>
<el-button @click="CommonJump('evaluationTemplate')" style="float:right" size="small" type="primary">回复模板</el-button>
</div>
<div class="content">
<div style="margin-bottom:20px">
<span>评价类型</span>
<el-select style="margin:0 10px" class="w100" @change="getList" v-model="msg.CommentGrade" size="small" placeholder="请选择">
<el-option label="全部评价" :value="0"></el-option>
<el-option
v-for="item in templateList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
<span>所属平台</span>
<el-select class="w100" @change="getList" style="margin-right: 10px;" v-model="msg.OrderSource" size="small" placeholder="请选择">
<el-option label="全平台" :value="0"></el-option>
<el-option
v-for="item in platList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
<el-input style="margin-left:15px;width:350px" class="input-item" placeholder="请输入内容" v-model="msgVal" size="small">
<el-select class="w100" @change="ChangeId" v-model="msgId" slot="prepend" placeholder="请选择">
<el-option
v-for="item in option"
:key="item.Id"
:label="item.name"
:value="item.Id">
</el-option>
</el-select>
<el-button @click="getList" slot="append" icon="el-icon-search"></el-button>
</el-input>
<el-button style="margin-left:10px" size="small">批量回复</el-button>
<el-button @click="plSet(2)" style="margin-left:10px" size="small">批量隐藏</el-button>
<el-button @click="plSet(6)" style="margin-left:10px" size="small">批量删除</el-button>
</div>
<el-table
:data="tableData"
v-loading="loading"
border
@selection-change="TableSelectChange"
style="width: 100%">
<el-table-column
type="selection"
width="55">
</el-table-column>
<el-table-column
prop="Id"
label="ID"
width="80">
</el-table-column>
<el-table-column
prop="UserName"
label="用户"
width="100">
</el-table-column>
<el-table-column
prop="Name"
label="平台"
width="80">
<template slot-scope="scope">
<img v-if="scope.row.PlatformSource==1" src="../../assets/img/userman/wx.png" alt="">
</template>
</el-table-column>
<el-table-column
prop="Content"
label="商品名称"
width="200">
<template slot-scope="scope">
<div class="goods-info">
<div class="backImg" style="background-image: url(https://cdnimg.iotweixin.com/uploads/mall1285/20200312/edf59b3b77f9920cf8ad03aea896a042.jpg); background-size: cover; "></div>
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 2;">
东山岛佛跳墙 满坛香 福寿全 6罐装 顺丰直达 福建省包邮 赞羊严选 海鲜霸王餐
</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="Name"
label="评价"
width="80">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="好评" placement="top">
<img v-if="scope.row.CommentGrade==1" src="../../assets/img/userman/good.png" alt="">
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="中评" placement="top">
<img v-if="scope.row.CommentGrade==2" src="../../assets/img/userman/good.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="差评" placement="top">
<img v-if="scope.row.CommentGrade==3" src="../../assets/img/userman/good.png" alt="">
</el-tooltip> -->
</template>
</el-table-column>
<el-table-column
prop="Name"
label="详情"
width="200">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" :content="scope.row.Content" placement="top">
<span>{{scope.row.Content}}</span>
</el-tooltip>
<div>
<div style="margin: 10px; display: inline-block; cursor: pointer;">
<div class="backImg" style="background-image: url(https://cdnimg.iotweixin.com/uploads/mall1285/20200316/586d61c616082de7c3a7d1d778104785.jpg); background-size: cover;"></div>
</div>
<div style="margin: 10px; display: inline-block; cursor: pointer;">
<div class="backImg" style="background-image: url(https://cdnimg.iotweixin.com/uploads/mall1285/20200316/586d61c616082de7c3a7d1d778104785.jpg); background-size: cover;"></div>
</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="CommentGradeName"
label="评价回复">
<template slot-scope="scope">
<span>{{scope.row.Reply}}</span>
</template>
</el-table-column>
<el-table-column
prop="CommentGradeName"
width="100"
label="置顶">
<template slot-scope="scope">
<el-switch
@change="changeSwitch(scope.row)"
v-model="scope.row.Is_Top"
active-color="#409EFF"
:active-value="1"
:inactive-value="0">
</el-switch>
</template>
</el-table-column>
<el-table-column
prop="CommentGradeName"
width="100"
label="状态">
<template slot-scope="scope">
<el-tag v-if="scope.row.Is_Show==1" size="mini" type="success">显示</el-tag>
<el-tag v-if="scope.row.Is_Show==2" size="mini" type="warning">隐藏</el-tag>
</template>
</el-table-column>
<el-table-column
width="220"
prop="address"
label="操作">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="评价回复" placement="top">
<img @click="EditTemplate(scope.row)" style="margin-right:10px" src="../../assets/img/userman/reply.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top">
<img @click="setBatch(scope.row,6)" style="margin-right:10px" src="../../assets/img/userman/del.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="隐藏" placement="top">
<img @click="setBatch(scope.row,2)" v-if="scope.row.Is_Show==1" style="margin-right:10px" src="../../assets/img/userman/icon-hidden.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="显示" placement="top">
<img @click="setBatch(scope.row,3)" v-if="scope.row.Is_Show==2" style="margin-right:10px" src="../../assets/img/userman/icon-show.png" alt="">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :total="total">
</el-pagination>
</div>
<!-- 添加模板 -->
<el-dialog title="添加模板" :visible.sync="addDig" width="600px">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="80px">
<el-form-item label="模板名称" prop="Name">
<el-input size="small" v-model="addMsg.Name"></el-input>
</el-form-item>
<el-form-item label="模板内容" prop="Content">
<el-input size="small" v-model="addMsg.Content" type="textarea" row="2"></el-input>
</el-form-item>
<el-form-item label="操作" prop="CommentGrade">
<el-radio v-model="addMsg.CommentGrade" :label="item.Id" v-for="(item,index) in templateList" :key="index">{{item.Name}}</el-radio>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="addDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="czsubmitForm('addMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
name: "evalTemplate",
data(){
return{
addDig:false,
loading:false,
tableData:[],
msgVal:'',
msgId:'',
option:[
{Id:1,name:'昵称'},
{Id:2,name:'商品名称'},
{Id:3,name:'评价内容'},
],
msg:{
pageIndex:1,
pageSize:15,
CommentGrade:0,
PlatformSource:0,
UserName:'',
GoodsName:'',
Content:'',
},
templateList:[],
total:0,
addMsg:{
Id:0,
Name:'',
Content:'',
CommentGrade:0,
},
rules:{
Name: [
{ required: true, message: '请输入模板名称', trigger: 'blur' }
],
Content: [
{ required: true, message: '请输入模板内容', trigger: 'blur' }
],
CommentGrade: [
{ required: true, message: '请选择类型', trigger: 'change' }
],
},
platList:[],
SelectList:[],
}
},
created(){
this.getTemplate();
this.getList();
this.getplat();
},
mounted(){},
methods:{
// 批量删除 隐藏 显示
plSet(index){
let that=this;
if(this.SelectList.length==0){
this.Error("请勾选数据!");
return;
}
let Ids="";
let IdList=[];
this.SelectList.forEach(item=>{
IdList.push(item.Id);
})
Ids=IdList.join(',');
let msg={
CommentIds:Ids,
Type:index,
}
let str="";
if(index==2){
str=`已选中${that.SelectList.length}条数据,是否批量隐藏?`;
}
if(index==6){
str=`已选中${that.SelectList.length}条数据,是否批量删除?`;
}
that.$confirm(str, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.commonSet(msg);
}).catch(() => {
});
},
changeSwitch(item){
let index=4;
if(item.Is_Top==1){
index=4;
}else{
index=5;
}
let msg={
CommentIds:item.Id,
Type:index,
}
this.commonSet(msg);
},
// 显示隐藏
setBatch(item,index){
let msg={
CommentIds:item.Id,
Type:index,
}
this.commonSet(msg);
},
commonSet(msg){
this.apipost("/api/order/SetGoodsCommentBatch",msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.Success(res.data.message)
this.getList();
}else{
this.Error(res.data.message)
}
})
},
TableSelectChange(val){
this.SelectList=val;
},
Delete(row){
let that=this;
that.$confirm("确认删除模板?", '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/DelGoodsCommentTemplateInfo',{TemplateId:row.Id},
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
EditTemplate(row){
this.addMsg={
Id:row.Id,
Name:row.Name,
Content:row.Content,
CommentGrade:row.CommentGrade,
}
this.addDig=true;
},
addTemplate(){
this.addMsg={
Id:0,
Name:'',
Content:'',
CommentGrade:1,
}
this.addDig=true;
},
czsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
let cmd = "/api/order/SetGoodsCommentTemplateInfo";
this.apipost(cmd, this.addMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.addDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
ChangeId(val){
let msgVal=this.msgVal;
if(this.msgId==1){
this.msg.UserName=msgVal;
this.msg.GoodsName='';
this.msg.Content='';
}
if(this.msgId==2){
this.msg.UserName='';
this.msg.GoodsName=msgVal;
this.msg.Content='';
}
if(this.msgId==3){
this.msg.UserName='';
this.msg.GoodsName='';
this.msg.Content=msgVal;
}
this.getList();
},
getList(){
let msgVal=this.msgVal;
if(this.msgId==1){
this.msg.UserName=msgVal;
this.msg.GoodsName='';
this.msg.Content='';
}
if(this.msgId==2){
this.msg.UserName='';
this.msg.GoodsName=msgVal;
this.msg.Content='';
}
if(this.msgId==3){
this.msg.UserName='';
this.msg.GoodsName='';
this.msg.Content='';
}
if(!this.msgVal || this.msgVal==''){
this.msg.UserName='';
this.msg.GoodsName='';
this.msg.Content='';
}
this.loading = true;
this.apipost("/api/order/GetGoodsCommentPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.tableData = pageData;
}
})
},
getplat(){
this.apipost("/api/user/GetMemberUserSourceEnumList",{}, res => {
this.platList=res.data.data;
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getTemplate(){
this.apipost("/api/order/GetGoodsCommentTypeEnumList",{}, res => {
this.templateList=res.data.data;
})
},
},
};
</script>
<style>
.evaluationMan .backImg{
background-position: center center;
width: 50px; height: 50px;
border-radius: 0%;
margin-right: 10px;
float: left;
}
.evalTemplate .input-item .el-input__inner:hover {
border: 1px solid #dcdfe6;
border-right: 0;
outline: 0;
}
.evalTemplate .input-item .el-input__inner {
border-right: 0;
}
.evalTemplate .el-input-group__append {
background-color: #fff;
border-left: 0;
width: 10%;
padding: 0;
}
.evalTemplate .content{
background: #fff;
margin-top:10px;
padding: 20px;
box-sizing: border-box;
}
</style>
<template>
<div class="evalTemplate">
<div class="head-title">
<span @click="CommonJump('evaluationMan')" class="blue point">评价管理</span> / 回复模板
<el-button @click="addTemplate" style="float:right" size="small" type="primary">添加模板</el-button>
</div>
<div class="content">
<div style="margin-bottom:20px">
<span>模板类型</span>
<el-select class="w100" @change="getList" v-model="msg.CommentGrade" size="small" placeholder="请选择">
<el-option label="全部回复" :value="0"></el-option>
<el-option
v-for="item in templateList"
:key="item.Id"
:label="item.Name"
:value="item.Id">
</el-option>
</el-select>
<el-input style="margin-left:15px;width:350px" class="input-item" placeholder="请输入内容" v-model="msgVal" size="small">
<el-select class="w100" @change="ChangeId" v-model="msgId" slot="prepend" placeholder="请选择">
<el-option
v-for="item in option"
:key="item.Id"
:label="item.name"
:value="item.Id">
</el-option>
</el-select>
<el-button @click="getList" slot="append" icon="el-icon-search"></el-button>
</el-input>
</div>
<el-table
:data="tableData"
v-loading="loading" border
style="width: 100%">
<el-table-column
prop="Id"
label="ID"
width="80">
</el-table-column>
<el-table-column
prop="Name"
label="模板名称"
width="180">
</el-table-column>
<el-table-column
prop="Content"
label="模板内容">
</el-table-column>
<el-table-column
prop="CommentGradeName"
width="120"
label="模板类型">
</el-table-column>
<el-table-column
width="220"
prop="address"
label="操作">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="编辑" placement="top">
<img @click="EditTemplate(scope.row)" style="margin-right:10px" src="../../assets/img/userman/edit.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top">
<img @click="Delete(scope.row)" src="../../assets/img/userman/del.png" alt="">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :total="total">
</el-pagination>
</div>
<!-- 添加模板 -->
<el-dialog title="添加模板" :visible.sync="addDig" width="600px">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="80px">
<el-form-item label="模板名称" prop="Name">
<el-input size="small" v-model="addMsg.Name"></el-input>
</el-form-item>
<el-form-item label="模板内容" prop="Content">
<el-input size="small" v-model="addMsg.Content" type="textarea" row="2"></el-input>
</el-form-item>
<el-form-item label="操作" prop="CommentGrade">
<el-radio v-model="addMsg.CommentGrade" :label="item.Id" v-for="(item,index) in templateList" :key="index">{{item.Name}}</el-radio>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="addDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="czsubmitForm('addMsg')">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
export default {
name: "evalTemplate",
data(){
return{
addDig:false,
loading:false,
tableData:[],
msgVal:'',
msgId:'',
option:[
{Id:1,name:'模板名称'},
{Id:2,name:'ID'}
],
msg:{
pageIndex:1,
pageSize:15,
Id:0,
Name:'',
CommentGrade:0,
},
templateList:[],
total:0,
addMsg:{
Id:0,
Name:'',
Content:'',
CommentGrade:0,
},
rules:{
Name: [
{ required: true, message: '请输入模板名称', trigger: 'blur' }
],
Content: [
{ required: true, message: '请输入模板内容', trigger: 'blur' }
],
CommentGrade: [
{ required: true, message: '请选择类型', trigger: 'change' }
],
},
}
},
created(){
this.getTemplate();
this.getList();
},
mounted(){},
methods:{
Delete(row){
let that=this;
that.$confirm("确认删除模板?", '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/DelGoodsCommentTemplateInfo',{TemplateId:row.Id},
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
EditTemplate(row){
this.addMsg={
Id:row.Id,
Name:row.Name,
Content:row.Content,
CommentGrade:row.CommentGrade,
}
this.addDig=true;
},
addTemplate(){
this.addMsg={
Id:0,
Name:'',
Content:'',
CommentGrade:1,
}
this.addDig=true;
},
czsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
let cmd = "/api/order/SetGoodsCommentTemplateInfo";
this.apipost(cmd, this.addMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.addDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
ChangeId(val){
let msgVal=this.msgVal;
if(this.msgId==1){
this.msg.Name=msgVal;
this.msg.Id=0;
}
if(this.msgId==2){
this.msg.Name='';
this.msg.Id=msgVal;
}
this.getList();
},
getList(){
if(this.msgId==1){
this.msg.Name=this.msgVal;
this.msg.Id=0;
}
if(this.msgId==2){
this.msg.Name='';
this.msg.Id=this.msgVal;
}
if(!this.msgVal || this.msgVal==''){
this.msg.Name='';
this.msg.Id=0;
}
this.loading = true;
this.apipost("/api/order/GetGoodsCommentTemplatePageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.tableData = pageData;
}
})
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getTemplate(){
this.apipost("/api/order/GetGoodsCommentTypeEnumList",{}, res => {
this.templateList=res.data.data;
})
},
},
};
</script>
<style>
.evalTemplate .input-item .el-input__inner:hover {
border: 1px solid #dcdfe6;
border-right: 0;
outline: 0;
}
.evalTemplate .input-item .el-input__inner {
border-right: 0;
}
.evalTemplate .el-input-group__append {
background-color: #fff;
border-left: 0;
width: 10%;
padding: 0;
}
.evalTemplate .content{
background: #fff;
margin-top:10px;
padding: 20px;
box-sizing: border-box;
}
</style>
......@@ -90,7 +90,7 @@
<div flex="dir:left cross:center" class="item-box">
<span class="label">收货地址:</span>
<div class="express-address">{{dataInfo.OrderInfo.DistrictAddress}}
{{dataInfo.OrderInfo.ShippingAddress}}
{{dataInfo.OrderInfo.ShoppingAddress}}
<button v-if="activeStep==2 || activeStep==3" @click="ExitshAdress(dataInfo.OrderInfo)" type="button"
class="el-button el-button--text el-button--small is-circle">
<i class="el-icon-edit"></i>
......@@ -210,10 +210,9 @@
</el-table-column>
<el-table-column prop="name" label="规格" width="200">
<template slot-scope="scope">
<span class="el-tag el-tag--mini el-tag--light"
style="margin-right: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 95%;">
{{scope.row.Specification}}
</span>
<el-tag :key="index2" v-for="(list,index2) in scope.row.SpecificationList" style="top: 5px;position: relative;margin-right: 5px; max-width: 300px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;" size="mini">
{{list}}
</el-tag>
</template>
</el-table-column>
......@@ -275,8 +274,8 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="详细地址" prop="ShippingAddress">
<el-input size="small" v-model="shMsg.ShippingAddress"></el-input>
<el-form-item label="详细地址" prop="ShoppingAddress">
<el-input size="small" v-model="shMsg.ShoppingAddress"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -380,7 +379,7 @@
Province: '',
City: '',
District: '',
ShippingAddress: '',
ShoppingAddress: '',
},
shMsgrule: {
Province: [{
......@@ -388,7 +387,7 @@
message: '请选择省',
trigger: 'change'
}],
ShippingAddress: [{
ShoppingAddress: [{
required: true,
message: '请输入详细地址',
trigger: 'blur'
......@@ -651,7 +650,7 @@
Province: item.Province,
City: item.City,
District: item.District,
ShippingAddress: item.ShippingAddress,
ShoppingAddress: item.ShoppingAddress,
}
this.getCity(item.Province);
this.getArea(item.City);
......
......@@ -116,9 +116,11 @@
<span style="margin-right: 10px;">
规格:
<el-tag
:key="index2"
v-for="(msg,index2) in list.SpecificationList"
style="top: 5px;position: relative;margin-right: 5px; max-width: 300px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;"
size="mini">
{{list.Specification}}
{{msg}}
</el-tag>
</span>
</div>
......@@ -214,8 +216,9 @@
<div class="card-footer">
<div>
<div flex="dir:left">
<div class="address-box">收货人: {{item.Consignee}} 电话:{{item.Mobile}} 地址:{{item.DistrictAddress}}
{{item.ShippingAddress}}</div>
<div class="address-box">收货人: {{item.Consignee}} 电话:{{item.Mobile}}
地址:{{item.DistrictAddress}}
{{item.ShoppingAddress}}</div>
<button v-if="item.OrderStatus==2" @click="ExitshAdress(item)" type="button"
class="el-button el-button--text is-circle"><i class="el-icon-edit"></i></button>
</div>
......@@ -344,8 +347,8 @@
</el-option>
</el-select>
</el-form-item>
<el-form-item label="详细地址" prop="ShippingAddress">
<el-input size="small" v-model="shMsg.ShippingAddress"></el-input>
<el-form-item label="详细地址" prop="ShoppingAddress">
<el-input size="small" v-model="shMsg.ShoppingAddress"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
......@@ -438,7 +441,7 @@
Province: '',
City: '',
District: '',
ShippingAddress: '',
ShoppingAddress: '',
},
shMsgrule: {
Province: [{
......@@ -446,7 +449,7 @@
message: '请选择省',
trigger: 'change'
}],
ShippingAddress: [{
ShoppingAddress: [{
required: true,
message: '请输入详细地址',
trigger: 'blur'
......@@ -803,7 +806,7 @@
Province: item.Province,
City: item.City,
District: item.District,
ShippingAddress: item.ShippingAddress,
ShoppingAddress: item.ShoppingAddress,
}
this.getCity(item.Province);
this.getArea(item.City);
......
<template>
<div class="orderDetails salesOrderDetails">
<div class="head-title">
<span @click="CommonJump('afterSalesOrder')" class="blue point">售后列表</span> / 订单详情
</div>
<div class="content app-order-detail">
<el-card class="app-order-status" shadow="never">
<el-steps :active="activeStep" align-center>
<el-step title="买家申请售后" icon="el-icon-edit" :description="dataInfo.CreateDate">
<i :class="activeStep>0?'step01Active':'step01'" slot="icon"></i>
</el-step>
<el-step title="卖家同意受理" icon="el-icon-edit" :description="dataInfo.AuditTime">
<i :class="activeStep>1?'step02Active':'step02'" slot="icon"></i>
</el-step>
<template>
<el-step v-if="activeStep<3" title="未完成售后" icon="el-icon-edit">
<i :class="activeStep>2?'step03Active':'step03'" slot="icon"></i>
</el-step>
<el-step v-else title="已完成售后" icon="el-icon-edit" :description="dataInfo.FinishTime">
<i :class="activeStep>2?'step03Active':'step03'" slot="icon"></i>
</el-step>
</template>
</el-steps>
</el-card>
<el-row :gutter="16">
<el-col :span="8">
<div flex="dir:top" class="card-box">
<h3>售后信息</h3>
<template v-if="dataInfo.OrderInfo">
<div flex="dir:left cross:center" class="item-box">
<span class="label">售后类型:</span>
<div>{{dataInfo.TypeName}}</div>
</div>
<div v-if="dataInfo.VoucherList && dataInfo.VoucherList.length>0" flex="dir:left cross:center" class="item-box">
<span flex-box="0" class="label">凭证图片:</span>
<div flex-box="1">
<img @click="OpenImg(item)" v-for="(item,index) in dataInfo.VoucherList" :key="index" slot="reference" :src="item" alt="" class="small-img">
</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">订单号:</span>
<div>{{dataInfo.ReOrderNo}}</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">实付金额:</span>
<div>{{dataInfo.Income}}</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">申请退款:</span>
<div>{{dataInfo.Refund}}</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">买家:</span>
<div>{{dataInfo.UserName}}</div>
</div>
</template>
</div>
</el-col>
<el-col :span="8">
<div class="card-box">
<h3>售后物流</h3>
<div v-for="(item,index) in dataInfo.ExpressList" :key="index">
<div flex="dir:left cross:center" class="item-box">
<span class="label">收货人:</span>
<div>{{item.Name}}</div>
</div>
<div flex="dir:left cross:center" class="item-box">
<span class="label">快递信息:</span>
<div>
<span class="el-tag el-tag--mini el-tag--light">{{item.ExpressName}}</span>
<span></span>
<a v-if="item.Type==1" :href="'https://www.baidu.com/s?wd='+item.ExpressName+item.ExpressNumber" target="_blank" title="点击搜索运单号">{{item.ExpressNumber}}</a>
<span v-if="item.Type==2">{{item.ExpressNumber}}</span>
</div>
</div>
</div>
</div>
</el-col>
<el-col :span="8">
<div flex="dir:top" class="card-box">
<h3>售后过程</h3>
<div v-for="(item,index) in dataInfo.AfterSaleLoglist" :key="index" class="list-item-box">
<div flex="dir:left cross:center" class="item-box">
<span class="label">
<span v-if="item.Type==1">买家:</span>
<span v-if="item.Type==2">卖家:</span>
</span>
<div class="label">{{item.CreateDate}}</div>
</div>
<div>{{item.Content}}</div>
</div>
</div>
</el-col>
</el-row>
<el-card shadow="never">
<el-table border :data="DetailList" style="width: 100%">
<el-table-column prop="Id" label="商品标题">
<template slot-scope="scope">
<div flex="dir:left cross:center">
<img :src="domainManager().ImageUrl+scope.row.CoverImagePath" alt=""
style="height: 60px; width: 60px; margin-right: 5px;">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 1;">
{{scope.row.GoodsName}}
</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="name" label="规格" width="200">
<template slot-scope="scope">
<el-tag :key="index2" v-for="(list,index2) in scope.row.SpecificationList" style="top: 5px;position: relative;margin-right: 5px; max-width: 300px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;" size="mini">
{{list}}
</el-tag>
</template>
</el-table-column>
<el-table-column prop="Unit_Price" label="单价" width="120">
</el-table-column>
<el-table-column prop="Number" label="数量" width="80">
</el-table-column>
<el-table-column prop="Original_Price" label="原价" width="120">
</el-table-column>
<el-table-column prop="Final_Price" label="折扣后" width="120">
</el-table-column>
</el-table>
<el-form label-width="200px" class="app-order-count-price">
<el-form-item label="商品小计">
¥{{OrderInfo.PreferPrice}}
</el-form-item>
<el-form-item label="运费">
¥{{OrderInfo.FreightMoney}}
</el-form-item>
<el-form-item label="实付款">
<span style="color: rgb(255, 69, 68);"><b>{{OrderInfo.Income}}</b></span>
</el-form-item>
</el-form>
</el-card>
<div flex="dir:right" class="action-box">
<template>
<!-- <el-button v-if="(activeStep==2 || activeStep==3) && !exitState" style="margin-left: 10px;" size="small"
type="primary">打印发货单</el-button>
<el-button style="margin-left: 10px;" size="small" type="primary">打印小票</el-button>
<el-button @click="qrEnd(dataInfo)" v-if="activeStep==4 && !exitState" style="margin-left: 10px;" size="small"
type="primary">确认完成</el-button>
<el-button @click="ConfirmSh(dataInfo)" v-if="activeStep==3 && !exitState" style="margin-left: 10px;"
size="small" type="primary">确认收货</el-button>
<el-button @click="fhBtn(dataInfo)" v-if="activeStep==2 && !exitState" style="margin-left: 10px;" size="small"
type="primary">发货</el-button> -->
<el-button @click="CommonJump('orderDetails',{OrderId:OrderInfo.OrderId})" style="margin-left: 10px;" size="small"
type="primary">订单详情</el-button>
<!-- v-if="dataInfo.Type==1 && dataInfo.ReOrderStatus==4" -->
<el-button @click="dkOpenDig(dataInfo)" style="margin-left: 10px;" size="small"
type="primary">打款</el-button>
</template>
</div>
</div>
<!-- 修改收货地址 -->
<el-dialog title="修改收货地址" :visible.sync="shDig" width="600px">
<el-form :model="shMsg" :rules="shMsgrule" ref="shMsg" label-width="80px">
<el-form-item label="收件人" prop="Consignee">
<el-input size="small" v-model="shMsg.Consignee"></el-input>
</el-form-item>
<el-form-item label="电话" prop="Mobile">
<el-input type="number" size="small" v-model="shMsg.Mobile"></el-input>
</el-form-item>
<el-form-item label="所在区域" prop="Province">
<el-select size="small" @change="shMsg.City='',getCity(shMsg.Province)" v-model="shMsg.Province"
style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in provinceList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
<el-select size="small" @change="shMsg.District='',getArea(shMsg.City)" v-model="shMsg.City"
style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in cityList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
<el-select size="small" v-model="shMsg.District" style="width:144px" filterable placeholder="请选择">
<el-option v-for="item in areaList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="详细地址" prop="ShoppingAddress">
<el-input size="small" v-model="shMsg.ShoppingAddress"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="shDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="shsubmitForm('shMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 订单取消 -->
<el-dialog title="修改" :visible.sync="exitDig" width="600px">
<el-form :model="exitMsg" ref="exitMsg" label-width="0">
<p style="padding:10px 0" v-if="exitMsg.Type==1">修改备注:</p>
<el-form-item>
<el-input type="textarea" row="2" size="small" v-model="exitMsg.Remark"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="exitDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="submitForm('exitMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 发货 -->
<el-dialog custom-class="app-send" title="发货" :visible.sync="fhDig" width="35%">
<div class="title-box">
<span class="text">选择发货商品</span>
<span>(默认全选)</span>
</div>
<el-table ref="fahuoTable" :data="fahuoList" @selection-change="TableSelectChange" style="width: 100%">
<el-table-column :selectable="selectable" type="selection" width="55">
</el-table-column>
<el-table-column prop="id" label="图片" width="60">
<template slot-scope="scope">
<img style="width:30px;height:30px" :src="domainManager().ImageUrl+scope.row.CoverImagePath" alt="">
</template>
</el-table-column>
<el-table-column prop="GoodsName" label="名称" width="314">
<template slot-scope="scope">
<el-tag v-if="scope.row.IsBindExpress==1" style="margin-left:5px" size="small" type="success">已发货</el-tag>
<span>{{scope.row.GoodsName}}</span>
</template>
</el-table-column>
<el-table-column prop="Number" label="数量" width="80">
</el-table-column>
<el-table-column prop="Specification" label="规格">
</el-table-column>
</el-table>
<div class="title-box"><span class="text">物流信息</span></div>
<el-form :model="fhMsg" ref="exitMsg" :rules="fhrules" label-width="130px">
<el-form-item label="物流快递">
<el-radio v-model="fhMsg.Type" :label="1">快递</el-radio>
<el-radio v-model="fhMsg.Type" :label="2">其他方式</el-radio>
</el-form-item>
<template v-if="fhMsg.Type==1">
<el-form-item label="快递公司" prop="ExpressId">
<el-select class="w200" size="small" v-model="fhMsg.ExpressId" filterable placeholder="请选择">
<el-option v-for="item in ExpressList" :key="item.ID" :label="item.Name" :value="item.ID">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="收件人邮编">
<el-input type="number" min="1" size="small" v-model="fhMsg.PostCode"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="ExpressNumber">
<el-input size="small" v-model="fhMsg.ExpressNumber">
<!-- <el-button slot="append"> 获取面单</el-button> -->
</el-input>
</el-form-item>
<el-form-item label="商家留言">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
<template v-if="fhMsg.Type==2">
<el-form-item label="物流内容">
<el-input type="textarea" row="2" size="small" v-model="fhMsg.Remark"></el-input>
</el-form-item>
</template>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="fhDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="FhsubmitForm('fhMsg')">确 定</el-button>
</span>
</el-dialog>
<!-- 打款 -->
<el-dialog
title="确认已收到货"
:visible.sync="dkDig"
width="600px">
<div flex="main:center cross:center" style="text-align: center; font-size: 16px;">
<i class="el-icon-warning" style="color: rgb(230, 162, 60); margin-right: 10px; font-size: 24px;"></i>
<span class="span-label">确认收货后,退款金额</span>
<el-input class="w100" size="small" v-model="dkMsg.Refund" style="margin:0 6px" type="number" min="1" placeholder="请输入内容"></el-input>
<span class="span-label">元将直接返还给用户!</span>
</div>
<div style="text-align:right;margin-top:20px">
<el-button size="small" @click="dkDig=false">取消</el-button>
<el-button size="small" type="primary" @click="SaleForRefunds">确定</el-button>
</div>
</el-dialog>
<!-- 查看图片 -->
<el-dialog
:visible.sync="seeimgDig"
width="45%">
<div>
<img :src="imgSrc" style="width:100%;max-width:100%;max-height:500px" alt="">
</div>
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return {
imgSrc:'',
seeimgDig:false,
activeStep: 0,
tableData: [{
Id: 1
}],
OrderId: 0,
dataInfo: {},
OrderInfo: {},
shDig: false,
shMsg: {
OrderId: 0,
Consignee: '',
Mobile: '',
Province: '',
City: '',
District: '',
ShoppingAddress: '',
},
shMsgrule: {
Province: [{
required: true,
message: '请选择省',
trigger: 'change'
}],
ShoppingAddress: [{
required: true,
message: '请输入详细地址',
trigger: 'blur'
}],
Mobile: [{
required: true,
message: '请输入手机号',
trigger: 'blur'
}],
Consignee: [{
required: true,
message: '请输入收件人',
trigger: 'blur'
}],
},
provinceList: [],
cityList: [],
areaList: [],
exitMsg: {
OrderId: 0,
Type: 1,
Remark: '',
},
exitDig: false,
fhrules: {
ExpressId: [{
required: true,
message: '请选择快递公司',
trigger: 'change'
}],
ExpressNumber: [{
required: true,
message: '请输入快递单号',
trigger: 'blur'
}],
},
fhMsg: {
Id: 0,
OrderId: '',
Type: 1,
ExpressId: '',
PostCode: '',
ExpressNumber: '',
Remark: '',
OrderDetailIdList: [],
},
fahuoList: [],
fhDig: false,
checkfhList: [],
ExpressList: [],
exitState: false,
ReOrderId:'',
DetailList:[],
dkMsg:{},
dkDig:false,
};
},
created() {
if (this.$route.query.ReOrderId) {
this.ReOrderId = this.$route.query.ReOrderId;
this.getData()
this.getProvince();
this.getExpressInfo();
}
},
methods: {
OpenImg(item){
this.imgSrc=item;
this.seeimgDig=true;
},
// 打款
SaleForRefunds(){
this.apipost('/api/order/SetOrderAfterSaleForRefunds',this.dkMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.dkDig=false;
} else {
this.Error(res.data.message);
}
},
null
);
},
// 打款
dkOpenDig(item){
this.dkMsg={
Refund:item.Refund,
ReOrderId:item.ReOrderId
};
this.dkDig=true;
},
// 确认完成
qrEnd(item, num) {
let msg = {
OrderId: item.OrderId,
Type: num
};
let that = this;
that.$confirm('是否完成该订单?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/SetOrderOperation', msg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
// 确认收货
ConfirmSh(item) {
let msg = {
OrderId: item.OrderId,
Type: 5
};
let that = this;
that.$confirm('是否确认收货?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.apipost('/api/order/SetOrderOperation', msg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
}).catch(() => {
});
},
FhsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.fhMsg.OrderDetailIdList = [];
if (this.checkfhList.length == 0) {
this.Error("至少选择一项!");
return;
}
this.checkfhList.forEach(item => {
this.fhMsg.OrderDetailIdList.push(item.Id);
})
if (this.fhMsg.Type == 2) {
this.fhMsg.ExpressId = "";
this.fhMsg.PostCode = "";
this.fhMsg.ExpressNumber = "";
}
this.apipost('/api/order/SetOrderSendGoods', this.fhMsg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.fhDig = false;
this.Success(res.data.message)
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
TableSelectChange(val) {
this.checkfhList = val;
},
selectable(row, index) {
return row.IsBindExpress === 2
},
// 发货
fhBtn(item) {
this.fhDig = true;
this.fhMsg = {
Id: 0,
OrderId: item.OrderId,
Type: 1,
ExpressId: '',
PostCode: '',
ExpressNumber: '',
Remark: '',
OrderDetailIdList: [],
}
this.fahuoList = item.DetailList;
},
getData() {
this.apipost("/api/order/GetOrderAfterSaleInfo", {
ReOrderId: this.ReOrderId
}, res => {
this.dataInfo = res.data.data;
let data = res.data.data;
// 未付款
if (data.CreateDate != '' && data.AuditTime=='') {
this.activeStep = 1;
}
if (data.CreateDate != '' && data.AuditTime!='' && data.FinishTime=='') {
this.activeStep = 2;
}
if (data.FinishTime!='') {
this.activeStep = 3;
}
if (data.OrderInfo) {
this.OrderInfo = data.OrderInfo;
}
this.DetailList=[];
this.DetailList.push(data.OrderInfo)
})
},
// 快递公司
getExpressInfo() {
this.apipost("/api/MallBase/GetExpressInfo", {}, res => {
if (res.data.resultCode == 1) {
this.ExpressList = res.data.data;
} else {
this.Info(res.data.message);
}
})
},
// 修改备注
OrderExit() {
this.exitMsg = {
OrderId: this.dataInfo.OrderId,
Type: 1,
Remark: this.dataInfo.Remark,
}
this.exitDig = true;
},
// 订单操作
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.apipost('/api/order/SetOrderOperation', this.exitMsg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.Success(res.data.message)
this.exitDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
// 修改收货地址
ExitshAdress(item) {
this.shDig = true;
this.shMsg = {
OrderId: this.dataInfo.OrderId,
Consignee: item.Consignee,
Mobile: item.Mobile,
Province: item.Province,
City: item.City,
District: item.District,
ShoppingAddress: item.ShoppingAddress,
}
this.getCity(item.Province);
this.getArea(item.City);
},
shsubmitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.apipost('/api/order/SetOrderShopingAddress', this.shMsg,
res => {
if (res.data.resultCode === 1) {
this.getData();
this.Success(res.data.message)
this.shDig = false;
} else {
this.Error(res.data.message);
}
},
null
);
} else {
return false;
}
});
},
getArea(val) {
this.apipost("/api/Destination/GetChildList", {
Id: val
}, res => {
this.areaList = res.data.data;
})
},
getCity(val) {
this.apipost("/api/Destination/GetChildList", {
Id: val
}, res => {
this.cityList = res.data.data;
if (this.cityList.length > 0) {
this.getArea(this.cityList[0].ID)
}
})
},
getProvince() {
this.apipost("/api/Destination/GetChildList", {
Id: 2
}, res => {
this.provinceList = res.data.data;
if (this.provinceList.length > 0) {
this.getCity(this.provinceList[0].ID)
}
})
},
},
mounted() {
}
};
</script>
<style>
.salesOrderDetails .list-item-box {
border-bottom: 1px solid #E3E3E3;
margin-bottom: 10px;
padding-bottom: 10px;
}
.salesOrderDetails .small-img {
width: 45px;
height: 45px;
cursor: pointer;
margin-right: 5px;
}
.app-order-detail .goods-pic {
width: 35px;
height: 35px;
margin: 0 4px;
}
.app-order-detail .express-address {
width: 80%;
}
.app-order-detail .action-box {
padding: 10px 20px;
}
.app-order-detail .app-order-count-price .el-form-item {
margin-bottom: 5px;
}
.app-order-detail .app-order-count-price {
float: right;
margin-right: 55px;
font-size: 12px;
text-align: right;
margin-top: 15px;
}
.app-order-detail h3 {
padding: 15px 0;
}
.app-order-detail .share-price {
color: #EF8933;
}
.app-order-detail .share-title {
font-size: 15px;
margin: 10px 0 5px;
}
.app-order-detail .card-box .label {
color: #999999;
margin-right: 10px;
}
.app-order-detail .item-box {
margin-bottom: 10px;
}
.app-order-detail .card-box {
border: 1px solid #EBEEF5;
border-radius: 3px;
padding: 10px;
height: 300px;
overflow-y: scroll;
}
.app-order-detail .stepExit {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/status_6_active.png");
}
.app-order-detail .step03 {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/status_4.png");
}
.app-order-detail .step02 {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/status_2.png");
}
.app-order-detail .step01 {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/status_5.png");
}
.app-order-detail .step03Active {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/s_1_active.png");
}
.app-order-detail .step02Active {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/s_3_active.png");
}
.app-order-detail .step01Active {
height: 30px;
width: 30px;
background-image: url("../../assets/img/userman/s_1_active.png");
}
.app-order-detail .app-order-status {
padding: 50px 120px;
margin-bottom: 30px;
}
.orderDetails .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
......@@ -259,6 +259,24 @@ export default new Router({
name: 'afterSalesOrder',
component: resolve => require(['@/components/orderMan/afterSalesOrder'], resolve),
},
// 订单管理 售后订单详情
        {
          path: '/salesOrderDetails',
          name: 'salesOrderDetails',
          component: resolve => require(['@/components/orderMan/salesOrderDetails'], resolve),
        },
        // 订单管理 评价模板
        {
          path: '/evaluationTemplate',
          name: 'evaluationTemplate',
          component: resolve => require(['@/components/orderMan/evaluationTemplate'], resolve),
        },
        // 订单管理 评价管理
        {
          path: '/evaluationMan',
          name: 'evaluationMan',
          component: resolve => require(['@/components/orderMan/evaluationMan'], resolve),
        },
//设置 基础设置
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment