Zory 3 týždňov pred
rodič
commit
c253a761aa

+ 7 - 0
src/api/model/merOrder.js

@@ -72,4 +72,11 @@ export default {
             return await http.post(this.url, params);
         },
     },
+    express: {
+        url: `${config.API_URL}/merchant/order/express`,
+        name: "-",
+        post: async function (params) {
+            return await http.post(this.url, params);
+        },
+    },
 }

+ 4 - 1
src/components/imFloat/order.vue

@@ -29,6 +29,8 @@
                         <div class="status-name" v-if="orderData.status == 5">已关闭</div>
                         <div class="status-name" v-if="orderData.status == 6">部分退款</div>
                         <div class="status-name" v-if="orderData.status == 7">履约中</div>
+                        <div class="status-name" v-if="orderData.status == 8">退款审核中</div>
+                        <div class="status-name" v-if="orderData.status == 9">退款审核中</div>
                         
                         <div class="status-desc" v-if="orderData.status == 0">超过30分钟未支付,订单将自动取消</div>
                         <div class="status-desc" v-if="orderData.status == 1">待使用</div>
@@ -38,7 +40,8 @@
                         <div class="status-desc" v-if="orderData.status == 5">订单已取消或已关闭</div>
                         <div class="status-desc" v-if="orderData.status == 6">部分退款中</div>
                         <div class="status-desc" v-if="orderData.status == 7">货物运输中</div>
-                        <div class="status-desc" v-if="orderData.status == 8">退款审核中</div>
+                        <div class="status-desc" v-if="orderData.status == 8">已发快递,等待审核拦截</div>
+                        <div class="status-desc" v-if="orderData.status == 9">订单已完成核销,售后申请中</div>
                         
                     </div>
                     <div class="order-goods">

+ 22 - 16
src/views/manage/order/index/components/table.vue

@@ -107,10 +107,32 @@
                     <span>履约中</span>
                     <span class="dec">货物运输中</span>
                 </div>
+                <!-- 发货后退款 -->
                 <div class="order-name" v-if="scope.row.status == 8">
                     <span>退款审核中</span>
                     <span class="dec">已发快递,等待审核拦截</span>
                 </div>
+                <!-- 核销后退款 -->
+                <div class="order-name" v-if="scope.row.status == 9">
+                    <span>退款审核中</span>
+                    <span class="dec">订单已完成核销,售后申请中</span>
+                </div>
+            </template>
+        </el-table-column>
+        <el-table-column label="发货状态" prop="types" width="160" align="left">
+            <template #default="scope">
+                <div class="order-name" v-if="scope.row.express_status == 0">
+                    <span>待订单完成</span>
+                </div>  
+                <div class="order-name" v-if="scope.row.express_status == 1">
+                    <span>待发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 2">
+                    <span>已发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 3">
+                    <span>已签收</span>
+                </div>
             </template>
         </el-table-column>
         <el-table-column label="佣金" prop="types" width="140" align="right">
@@ -122,22 +144,6 @@
                 <div v-else>无</div>
             </template>
         </el-table-column>
-        <el-table-column label="发货状态" prop="types" width="160" align="left">
-            <template #default="scope">
-                <div v-if="scope.row.status == 2">
-                    <div class="order-name" v-if="scope.row.express_status == 1">
-                        <span>待发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 2">
-                        <span>已发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 3">
-                        <span>已签收</span>
-                    </div>
-                </div>
-                <div v-else>待订单完成</div>
-            </template>
-        </el-table-column>
         <el-table-column label="来源达人" prop="scene" width="220">
             <template #default="scope">
                 <div class="goods-img" v-if="scope.row.star">

+ 22 - 16
src/views/merchant/order/index/components/table.vue

@@ -86,10 +86,32 @@
                     <span>履约中</span>
                     <span class="dec">货物运输中</span>
                 </div>
+                <!-- 发货后退款 -->
                 <div class="order-name" v-if="scope.row.status == 8">
                     <span>退款审核中</span>
                     <span class="dec">已发快递,等待审核拦截</span>
                 </div>
+                <!-- 核销后退款 -->
+                <div class="order-name" v-if="scope.row.status == 9">
+                    <span>退款审核中</span>
+                    <span class="dec">订单已完成核销,售后申请中</span>
+                </div>
+            </template>
+        </el-table-column>
+        <el-table-column label="发货状态" prop="types" width="160" align="left">
+            <template #default="scope">
+                <div class="order-name" v-if="scope.row.express_status == 0">
+                    <span>待订单完成</span>
+                </div>  
+                <div class="order-name" v-if="scope.row.express_status == 1">
+                    <span>待发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 2">
+                    <span>已发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 3">
+                    <span>已签收</span>
+                </div>
             </template>
         </el-table-column>
         <el-table-column label="佣金" prop="types" width="140" align="right">
@@ -101,22 +123,6 @@
                 <div v-else>无</div>
             </template>
         </el-table-column>
-        <el-table-column label="发货状态" prop="types" width="160" align="left">
-            <template #default="scope">
-                <div v-if="scope.row.status == 2">
-                    <div class="order-name" v-if="scope.row.express_status == 1 || scope.row.express_status == 0">
-                        <span>待发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 2">
-                        <span>已发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 3">
-                        <span>已签收</span>
-                    </div>
-                </div>
-                <div v-else>待订单完成</div>
-            </template>
-        </el-table-column>
         <el-table-column label="来源达人" prop="scene" width="220">
             <template #default="scope">
                 <div class="goods-img" v-if="scope.row.star">

+ 1 - 1
src/views/service/chat/components/aside.vue

@@ -37,7 +37,7 @@
         <div class="sub-fitter">
             <div class="search" @click="searchData">
                 <div class="icon"><el-icon><el-icon-search /></el-icon></div>
-                <div class="info">用户昵称/聊天记录/订单号</div>
+                <div class="info">用户昵称/聊天记录</div>
             </div>
             <div class="chat-tab">
                 <div :class="chatType==1?'chat-item-tab active':'chat-item-tab'" @click="checkType(1)">当前咨询</div>

+ 7 - 1
src/views/service/chat/components/chatBody.vue

@@ -25,7 +25,13 @@
                                 </div>
                                 <div class="message-con">
                                     <div v-if="item.msgType == 'text'">
-                                        <div v-html="renderTextMessage(item.content)"></div>
+                                        <el-popconfirm
+                                            title="确定删除吗?"
+                                        >
+                                        <template #reference>
+                                            <div v-html="renderTextMessage(item.content)"></div>
+                                        </template>
+                                        </el-popconfirm>
                                     </div>
                                     <div class="m-address" v-if="item.msgType == 'address'">
                                         <div class="image"><el-image style="width: 40px;" :src="item.content.img" mode="widthFix"></el-image></div>

+ 82 - 0
src/views/service/order/index/components/express.vue

@@ -0,0 +1,82 @@
+<template>
+    <el-dialog :title="titleMap[mode]" v-model="visible" :width="500" :close-on-click-modal="false" destroy-on-close @closed="$emit('closed')">
+        <el-form ref="dialogForm" :model="formData" :rules="rules" label-width="100px" label-position="top">
+            <el-form-item label="快递单号" prop="express_sn">
+                <el-input v-model="formData.express_sn" placeholder="请输入快递单号" clearable
+                    :style="{width: '100%'}"></el-input>
+                <div class="el-form-item-msg">必须为真实可查询物流信息单号,同人多笔订单可使用一个单号,否则影响核销</div>
+            </el-form-item>
+            <el-form-item label="快递公司" prop="express_name">
+                <el-input v-model="formData.express_name" placeholder="请输入快递单号" clearable
+                    :style="{width: '100%'}"></el-input>
+            </el-form-item>
+            <el-form-item label="运单填写电话" prop="mobile">
+                <el-input v-model="formData.mobile" placeholder="请输入快递单号" clearable
+                    :style="{width: '100%'}"></el-input>
+                <div class="el-form-item-msg">不填写则默认使用用户登录号码,如运单为顺丰、京东则必须一致,否则影响核销</div>
+            </el-form-item>
+        </el-form>
+		<template #footer>
+            <el-button @click="visible=false" size="large">取 消</el-button>
+            <el-button v-if="mode!='show'" size="large" type="primary" :loading="isSaveing" @click="submit()">保 存</el-button>
+		</template>
+    </el-dialog>
+    
+</template>
+
+<script>
+export default {
+    data(){
+        return {
+            loading: false,
+            isSaveing: false,
+            mode:"add",
+            titleMap:{
+                add:"订单发货",
+                edit:"绑定达人"
+            },
+            visible:false,
+            formData:{},
+            rules:{
+                express_sn: [
+                    {required: true, message: '请输入'}
+                ],
+                express_name: [
+                    {required: true, message: '请输入'}
+                ]
+            },
+            tableData:{}
+        }
+    },
+    methods:{
+        open(mode = 'add'){
+            this.mode = mode;
+            this.visible = true;
+            return this
+        },
+        //表单注入数据
+        setData(data){
+            this.tableData = JSON.parse(JSON.stringify(data));
+        },
+        async submit(){
+            var validate = await this.$refs.dialogForm.validate().catch(()=>{});
+            if(!validate){ return false }
+            this.isSaveing = true;
+            let submitData = JSON.parse(JSON.stringify(this.formData));
+            submitData.order = this.tableData.out_order_no;
+            var resp = await this.$API.merOrder.express.post(submitData);
+            this.isSaveing = false;
+            if (resp.code == 0) {
+                return this.$message.error(resp.msg);
+            }
+            this.$message.success(resp.msg);
+            this.visible = false;
+            this.$emit("success");
+        }
+    }
+}
+</script>
+
+<style>
+.text-center{text-align: center;}
+</style>

+ 26 - 12
src/views/service/order/index/components/table.vue

@@ -113,26 +113,32 @@
                     <span>履约中</span>
                     <span class="dec">货物运输中</span>
                 </div>
+                <!-- 发货后退款 -->
                 <div class="order-name" v-if="scope.row.status == 8">
                     <span>退款审核中</span>
                     <span class="dec">已发快递,等待审核拦截</span>
                 </div>
+                <!-- 核销后退款 -->
+                <div class="order-name" v-if="scope.row.status == 9">
+                    <span>退款审核中</span>
+                    <span class="dec">订单已完成核销,售后申请中</span>
+                </div>
             </template>
         </el-table-column>
         <el-table-column label="发货状态" prop="types" width="160" align="left">
             <template #default="scope">
-                <div v-if="scope.row.status == 2">
-                    <div class="order-name" v-if="scope.row.express_status == 1 || scope.row.express_status == 0">
-                        <span>待发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 2">
-                        <span>已发货</span>
-                    </div>
-                    <div class="order-name" v-if="scope.row.express_status == 3">
-                        <span>已签收</span>
-                    </div>
+                <div class="order-name" v-if="scope.row.express_status == 0">
+                    <span>待订单完成</span>
+                </div>  
+                <div class="order-name" v-if="scope.row.express_status == 1">
+                    <span>待发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 2">
+                    <span>已发货</span>
+                </div>
+                <div class="order-name" v-if="scope.row.express_status == 3">
+                    <span>已签收</span>
                 </div>
-                <div v-else>待订单完成</div>
             </template>
         </el-table-column>
         <el-table-column label="来源达人" prop="scene" width="260">
@@ -166,19 +172,22 @@
                     <el-button type="danger" size="small" text @click="table_done(scope.row)" v-if="scope.row.status==7 && scope.row.is_new==1">核销</el-button>
                 </el-button-group>
                 <el-button-group>
+                    <el-button type="primary" size="small" text @click="table_express(scope.row)" v-if="scope.row.status==1">发货</el-button>
                     <el-button type="danger" size="small" text @click="table_black(scope.row)">拉黑</el-button>
                 </el-button-group>
             </template>
         </el-table-column>
     </scTable>
     <orderDetail ref="orderDetail" @success="orderSuccess"></orderDetail>
+    <expressMain ref="expressMain" @success="orderSuccess"></expressMain>
 </template>
 
 <script>
 import orderDetail from "@/components/imFloat/order";
+import expressMain from "./express";
 export default {
     components:{
-        orderDetail
+        orderDetail,expressMain
     },
     props: {
         trade: { type: String, default: "0" },
@@ -194,6 +203,11 @@ export default {
         }
     },
     methods: {
+        table_express(data){
+            this.$nextTick(() => {
+                this.$refs.expressMain.open("add").setData(data)
+            })
+        },
         tableRowClassName(row, rowIndex) {
             if (row.row.is_error === 1) {
                 return 'error-row';

+ 1 - 1
src/views/service/other/area/components/form.vue

@@ -1,5 +1,5 @@
 <template>
-    <el-dialog :title="titleMap[mode]" v-model="visible" :width="500" destroy-on-close @closed="$emit('closed')">
+    <el-dialog :title="titleMap[mode]" v-model="visible" :close-on-click-modal="false" :width="500" destroy-on-close @closed="$emit('closed')">
         <el-form ref="dialogForm" :model="formData" :rules="rules" label-width="100px" label-position="top">
             <el-form-item label="选择区域" prop="name">
                 <el-cascader ref="cascaderRef" v-model="formData.category" :options="categoryData" :props="deptsProps" @change="getTemplate" clearable style="width: 100%;" />