瀏覽代碼

优化店铺前端药品订单和售后订单

yjwang 3 周之前
父節點
當前提交
15325b017a

+ 8 - 0
src/api/store/storeAfterSales.js

@@ -102,3 +102,11 @@ export function exportSales(query) {
     params: query
   })
 }
+
+// 查询售后记录详细
+export function getRelatedProducts(id) {
+  return request({
+    url: '/store/storeAfterSales/getRelatedProducts/' + id,
+    method: 'get'
+  })
+}

+ 12 - 2
src/api/store/storeOrder.js

@@ -17,7 +17,7 @@ export function importTemplate() {
   })
 }
 // 查询订单详细
-export function getOrder(orderId) {
+export function getStoreOrder(orderId) {
   return request({
     url: '/store/storeOrder/' + orderId,
     method: 'get'
@@ -103,13 +103,23 @@ export function addOrder(data) {
 }
 
 // 修改订单
-export function updateOrder(data) {
+export function updateStoreOrder(data) {
   return request({
     url: '/store/storeOrder',
     method: 'put',
     data: data
   })
 }
+
+// 修改物流编号
+export function updateDeliveryId(data) {
+  return request({
+    url: '/store/storeOrder/editDeliveryId',
+    method: 'put',
+    data: data
+  })
+}
+
 export function updateDelivery(data) {
   return request({
     url: '/store/storeOrder/updateDelivery',

+ 68 - 28
src/views/components/store/storeAfterSalesDetails.vue

@@ -6,7 +6,7 @@
 <div class="content" v-if="item!=null" style="padding-bottom: 20px;">
   <div class="desct"></div>
 <div class="order-status" v-if="item!=null" >
-          <el-steps  :active="item.status" align-center finish-status="success">
+          <el-steps  :active="item.status+1" align-center finish-status="success">
             <el-step title="待审核"></el-step>
               <el-step title="平台已审核等待用户发货"></el-step>
               <el-step title="用户已发货待仓库审核"></el-step>
@@ -69,31 +69,71 @@
           :data="prod"
           size="small"
           style="width: 100%;margin-top: 20px" >
-          <el-table-column label="商品图片" width="150" align="center">
-            <template slot-scope="scope">
-              <img :src="JSON.parse(scope.row.jsonInfo).image" style="height: 80px">
-            </template>
-          </el-table-column>
-          <el-table-column label="商品名称" width="300" align="center">
-            <template slot-scope="scope">
-              <p>{{JSON.parse(scope.row.jsonInfo).productName}}</p>
-            </template>
-          </el-table-column>
-          <el-table-column label="价格" width="240" align="center">
-            <template slot-scope="scope">
-              <p>价格:¥{{JSON.parse(scope.row.jsonInfo).price}}</p>
-            </template>
-          </el-table-column>
-          <el-table-column label="属性" width="240" align="center">
-            <template slot-scope="scope">
-              {{JSON.parse(scope.row.jsonInfo).sku}}
-            </template>
-          </el-table-column>
-          <el-table-column label="数量" width="180" align="center">
-            <template slot-scope="scope">
-                {{JSON.parse(scope.row.jsonInfo).num}}
-            </template>
-          </el-table-column>
+     <el-table-column label="商品图片" width="150" align="center">
+       <template slot-scope="scope">
+         <img :src="JSON.parse(scope.row.jsonInfo).image" style="height: 80px">
+       </template>
+     </el-table-column>
+     <el-table-column label="商品编码" width="300" align="center">
+       <template slot-scope="scope">
+         <p>{{JSON.parse(scope.row.jsonInfo).barCode}}</p>
+       </template>
+     </el-table-column>
+     <el-table-column label="商品组合编码" width="300" align="center">
+       <template slot-scope="scope">
+         <p>{{JSON.parse(scope.row.jsonInfo).groupBarCode}}</p>
+       </template>
+     </el-table-column>
+     <el-table-column label="商品名称" width="300" align="center">
+       <template slot-scope="scope">
+         <p>{{JSON.parse(scope.row.jsonInfo).productName}}</p>
+       </template>
+     </el-table-column>
+     <el-table-column label="单价" width="240" align="center">
+       <template slot-scope="scope">
+         <p>¥{{JSON.parse(scope.row.jsonInfo).price.toFixed(2)}}</p>
+       </template>
+     </el-table-column>
+     <el-table-column label="规格" width="240" align="center">
+       <template slot-scope="scope">
+         {{JSON.parse(scope.row.jsonInfo).sku}}
+       </template>
+     </el-table-column>
+     <el-table-column label="数量" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.num}}
+       </template>
+     </el-table-column>
+     <el-table-column label="剂型" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.dosageForm}}
+       </template>
+     </el-table-column>
+     <el-table-column label="通用名称" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.commonName}}
+       </template>
+     </el-table-column>
+     <el-table-column label="批号" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.batchNumber}}
+       </template>
+     </el-table-column>
+     <el-table-column label="注册证书编号" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.drugRegCertNo}}
+       </template>
+     </el-table-column>
+     <el-table-column label="上市许可持有人" width="180" align="center">
+       <template slot-scope="scope">
+         {{scope.row.mah}}
+       </template>
+     </el-table-column>
+     <el-table-column label="处方药" width="240" align="center">
+       <template slot-scope="scope">
+         {{scope.row.isPrescribe!=null&&scope.row.isPrescribe==1?'是':'否'}}
+       </template>
+     </el-table-column>
           <el-table-column label="小计"  align="center">
             <template slot-scope="scope">
               ¥{{JSON.parse(scope.row.jsonInfo).num*JSON.parse(scope.row.jsonInfo).price}}
@@ -150,7 +190,7 @@
 </template>
 
 <script>
-import {tuiMoney,noAuditing,depotAuditing, auditing, codeId, logList, itemList,listSales, getSales, delSales, addSales, updateSales, exportSales } from "@/api/store/storeAfterSales";
+import {tuiMoney,noAuditing,depotAuditing, auditing, codeId, logList,getRelatedProducts, itemList,listSales, getSales, delSales, addSales, updateSales, exportSales } from "@/api/store/storeAfterSales";
 import storeOrderDetails from '../store/storeOrderDetails.vue';
   export default {
     name: "orderDet",
@@ -332,7 +372,7 @@ import storeOrderDetails from '../store/storeOrderDetails.vue';
         this.editForm.deliverySn = null;
       },
       getitemList(){
-        itemList(this.item.id).then(response => {
+        getRelatedProducts(this.item.id).then(response => {
             this.prod = response.data;
         });
       },

+ 861 - 774
src/views/components/store/storeOrderDetails.vue

@@ -1,810 +1,897 @@
 <template>
-  <div style="background-color: #f0f2f5; padding-bottom: 20px; min-height: 100%; " >
-    <div style="padding: 20px; background-color: #fff;">
-      订单详情
+  <div class="order-content">
+    <div class="order-status" v-if="order!=null" >
+      <el-steps  :active="order.status==3?order.status+1:order.status" align-center>
+        <el-step title="待支付"></el-step>
+        <el-step title="待发货"></el-step>
+        <el-step title="待收货"></el-step>
+        <el-step title="交易完成"></el-step>
+      </el-steps>
     </div>
-<div class="contentx" v-if="item!=null">
-  <div class="desct"></div>
-<div class="order-status" v-if="item!=null" >
-          <el-steps  :active="item.status-1" align-center finish-status="success">
-            <el-step title="待支付"></el-step>
-            <el-step title="待发货"></el-step>
-            <el-step title="待收货"></el-step>
-            <el-step title="已完成"></el-step>
-          </el-steps>
-</div>
-           <el-card shadow="never" style="margin-top: 15px">
-             <div class="operate-container"  v-if="item!=null">
-               <span style="margin-left: 20px" class="color-danger">订单状态:
-                  <el-tag prop="status" v-for="(ite, index) in orderOptions"    v-if="item.status==ite.dictValue">{{ite.dictLabel}}</el-tag>
-               </span>
-             
-               <div class="operate-button-container"  v-if="item.status==2&&item.orderType==1">
-                  <el-button size="mini" @click="sendVisible=true" v-hasPermi="['his:storeOrder:sendGoods']">发货</el-button>
-               </div>
-               <div class="operate-button-container"  v-if="item.status==2&&item.orderType==2">
-                  <el-button size="mini" @click="tuiOrder()" v-hasPermi="['his:storeOrder:sendHisGoods']" >推送订单</el-button>
-               </div>
-              <div class="operate-button-container"   v-if="item.deliverySn!=null" v-hasPermi="['his:storeOrder:express']">
-                <el-button size="mini" @click="showExpress()" >查看物流</el-button>
-              </div>
-              <div class="operate-button-container" >
-                <el-button size="mini" @click="editDelivery()"  >修改物流单号</el-button>
-              </div>
-              <div class="operate-button-container" v-if="item.status ==1 && item.extendOrderId == null && item.deliverySn == null&&item.orderType==1"   v-hasPermi="['his:storeOrder:createErpOrder']">
-                <el-button size="mini" @click="addErpOrder()" >创建ERP订单信息</el-button>
-              </div>
-              <div class="operate-button-container" v-if="item.extendOrderId!=null && item.orderType==1"  v-hasPermi="['his:storeOrder:getEroOrder']"  >
-                <el-button size="mini" @click="showErpOrder()" >ERP订单信息</el-button>
-              </div>
-               <div class="operate-button-container" v-if="item.status>1">
-                   <el-button size="mini" @click="refund()" v-hasPermi="['his:storeOrder:tuiMoney']">申请退款</el-button>
-               </div>
-             </div>
-     <div class="desct">
-      基本信息
-     </div>
-      <el-descriptions :column="3" border  >
-            <el-descriptions-item label="订单编号"  ><span v-if="item!=null">{{item.orderCode}}</span></el-descriptions-item>
-            <el-descriptions-item label="会员"><span v-if="item.nickName!=null">{{item.nickName}}({{item.phone}})</span></el-descriptions-item>
-            <el-descriptions-item label="支付方式"  ><dict-tag :options="PayOptions" :value="item.payType"/></el-descriptions-item>
-            <el-descriptions-item label="订单类型"  ><dict-tag :options="orderOptions" :value="item.status"/></el-descriptions-item>
-            <el-descriptions-item label="药品类型"  ><dict-tag :options="orderTypeOptions" :value="item.orderType"/></el-descriptions-item>
-            <el-descriptions-item label="医生名称"  ><span v-if="item!=null">{{item.doctorName}}</span></el-descriptions-item>
-            <el-descriptions-item label="患者姓名"  > <span v-if="item!=null">{{item.patientName}}</span></el-descriptions-item>
-            <el-descriptions-item label="患者年龄"  ><span v-if="item!=null">{{item.patientAge}}</span></el-descriptions-item>
-            <el-descriptions-item label="患者性别"  >  <dict-tag :options="sexOptions" :value="item.patientGender"/>  </el-descriptions-item>
-            <el-descriptions-item label="诊断"  ><span v-if="item!=null">{{item.diagnose}}</span> </el-descriptions-item>
-            <el-descriptions-item label="收货人" >  <span v-if="item!=null">{{item.userName}}</span>  </el-descriptions-item>
-            <el-descriptions-item label="收货人电话" > <span v-if="item!=null">{{item.userPhone}}</span></el-descriptions-item>
-            <el-descriptions-item label="详细地址" > <span>{{item.userAddress}}</span></el-popover>  </el-descriptions-item>
-            <el-descriptions-item label="所属公司"><span v-if="item!=null">{{item.companyName}}</span></el-descriptions-item>
-            <el-descriptions-item label="员工"><span v-if="item!=null">{{item.companyUserName}}</span></el-descriptions-item>
-            <el-descriptions-item label="推广佣金" ><span v-if="item.tuiMoney!=null">{{item.tuiMoney.toFixed(2)}}</span></el-descriptions-item>
-            <el-descriptions-item label="推广佣金状态" ><span v-if="item!=null"><dict-tag :options="tuiOptions" :value="item.tuiMoneyStatus"/> </span></el-descriptions-item>
-            <el-descriptions-item label="快递公司编号" > <span v-if="item!=null">{{item.deliveryCode}}</span></el-descriptions-item>
-            <el-descriptions-item label="快递名称" ><span v-if="item!=null">{{item.deliveryName}}</span></el-descriptions-item>
-            <el-descriptions-item label="快递单号" ><span v-if="item!=null">{{item.deliverySn}}</span></el-descriptions-item>
-            <el-descriptions-item label="ERP编号" ><span v-if="item!=null">{{item.extendOrderId}}</span></el-descriptions-item>
-            <el-descriptions-item label="物流状态" ><dict-tag :options="deliveryStatusOptions" :value="item.deliveryStatus"/></span></el-descriptions-item>
-            <el-descriptions-item label="物流结算状态" ><dict-tag :options="deliveryPayStatusOptions" :value="item.deliveryPayStatus"/></span></el-descriptions-item>
-            <el-descriptions-item label="物流结算时间" ><span v-if="item!=null">{{item.deliveryPayTime}}</span></el-descriptions-item>
-            <el-descriptions-item label="物流结算金额" ><span v-if="item!=null">{{item.deliveryPayMoney}}</span></el-descriptions-item>
-            <el-descriptions-item label="物流跟踪状态" ><span v-if="item!=null"><dict-tag :options="deliveryTypeOptions" :value="item.deliveryType"/> </span></el-descriptions-item>
-
-            <el-descriptions-item label="用户备注" ><span v-if="item!=null">{{item.remark}}</span></el-descriptions-item>
-      </el-descriptions>
-    </el-card>
- </div>
- <div class="contentx" v-if="item!=null" style="padding-bottom: 70px;">
-  <div class="desct">
-      商品信息
-     </div>
-     <el-tooltip class="item" effect="dark" :content="showList ? '显示全部' : '隐藏'" placement="top" style="float: right;">
-       <el-button size="mini" circle icon="el-icon-search" @click="showListD()" />
-     </el-tooltip>
-  <el-table border v-if="showProd!=null" :data="showProd" size="small" style="width: 100%;margin-top: 20px" >
-         <el-table-column label="商品图片" width="150" align="center">
-           <template slot-scope="scope">
-             <img :src="JSON.parse(scope.row.jsonInfo).image" style="height: 80px">
-           </template>
-         </el-table-column>
-         <el-table-column label="商品编码" width="300" align="center">
-           <template slot-scope="scope">
-             <p>{{JSON.parse(scope.row.jsonInfo).barCode}}</p>
-           </template>
-         </el-table-column>
-         <el-table-column label="商品名称" width="300" align="center">
-           <template slot-scope="scope">
-             <p>{{JSON.parse(scope.row.jsonInfo).productName}}</p>
-           </template>
-         </el-table-column>
-         <el-table-column label="单价" width="240" align="center">
-           <template slot-scope="scope">
-             <p>¥{{JSON.parse(scope.row.jsonInfo).price.toFixed(2)}}</p>
-           </template>
-         </el-table-column>
-         <el-table-column label="规格" width="240" align="center">
-           <template slot-scope="scope">
-             {{JSON.parse(scope.row.jsonInfo).sku}}
-           </template>
-         </el-table-column>
-         <el-table-column label="数量" width="180" align="center">
-           <template slot-scope="scope">
-             {{scope.row.num}}
-           </template>
-         </el-table-column>
-         <el-table-column label="处方药" width="240" align="center">
-           <template slot-scope="scope">
-             {{scope.row.isPrescribe!=null&&scope.row.isPrescribe==1?'是':'否'}}
-           </template>
-         </el-table-column>
-         <el-table-column label="小计"  align="center">
-           <template slot-scope="scope" >
-             ¥{{(scope.row.num*JSON.parse(scope.row.jsonInfo).price).toFixed(2)}}
-           </template>
-         </el-table-column>
-       </el-table>
-       <div style="float: right;margin: 20px" v-if="item.totalPrice!=null">
-         合计:<span class="color-danger">¥{{item.totalPrice.toFixed(2)}}</span>
-       </div>
-       <div style="float: right;margin: 20px" v-if="item.orderType==2">
-         剂数:<span class="color-danger">{{counts}}</span>
-       </div>
-  </div>
-   <div class="contentx" v-if="item!=null">
-  <div class="desct">
-    费用信息
-  </div>
- <el-descriptions   :column="3" border  >
-           <el-descriptions-item label="商品合计"  ><span v-if="item.totalPrice!=null">¥{{item.totalPrice.toFixed(2)}} </span></el-descriptions-item>
-           <el-descriptions-item label="处方应付金额"  ><span v-if="item.payPrice!=null"> ¥{{item.payPrice.toFixed(2)}}</span></el-descriptions-item>
-          <el-descriptions-item label="运费" ><span v-if="item.payDelivery!=null">¥{{item.payDelivery.toFixed(2)}}</span></el-descriptions-item>
-          <el-descriptions-item label="优惠劵" ><span v-if="item.discountMoney!=null">¥{{item.discountMoney.toFixed(2)}}</span></el-descriptions-item>
-           <el-descriptions-item label="实付金额"  ><span v-if="item.payMoney!=null">¥{{item.payMoney.toFixed(2)}}</span></el-descriptions-item>
-           <el-descriptions-item label="代收金额" ><span v-if="item.payRemain!=null">¥{{item.payRemain.toFixed(2)}}</span></el-descriptions-item>
-</el-descriptions>
-   </div>
-       <div class="contentx" v-if="item!=null">
-        <div class="desct">
-          支付信息
+    <div>
+      <el-card shadow="never" style="margin-top: 15px">
+        <div class="operate-container"  v-if="order!=null">
+        <span style="margin-left: 20px" class="color-danger">订单状态:
+           <el-tag prop="status" v-for="(item, index) in statusOptions"   v-if="order.status==item.dictValue">{{item.dictLabel}}</el-tag>
+        </span>
+          <div class="operate-button-container" >
+            <el-button size="mini" @click="editOrder()">修改订单</el-button>
+          </div>
+          <div class="operate-button-container"  v-hasPermi="['store:storeOrder:finishOrder']" v-if="order.status===2">
+            <el-button size="mini" @click="finishOrder()" >确认收货</el-button>
+          </div>
+<!--          <div class="operate-button-container" v-if="order.status==1||order.status==2">-->
+<!--            <el-button size="mini" @click="refund(order.id)">申请退款</el-button>-->
+<!--          </div>-->
+<!--          <div class="operate-button-container" v-if="order.status==1||order.status==2"  v-hasPermi="['store:storeOrder:refundOrderMoney']"  >-->
+<!--            <el-button size="mini" @click="refundOrderMoney()" >退款</el-button>-->
+<!--          </div>-->
+<!--          <div class="operate-button-container">-->
+<!--            <el-button size="mini" @click="showExpress()">查看物流</el-button>-->
+<!--          </div>-->
+          <div class="operate-button-container" v-if="order.tuiMoneyStatus==0"  v-hasPermi="['store:storeOrder:editTuiMoney']"  >
+            <el-button size="mini" @click="editTuiMoney1()" >解冻</el-button>
+          </div>
+          <div class="operate-button-container" v-if="order.tuiMoneyStatus==1"  v-hasPermi="['store:storeOrder:editTuiMoney']"  >
+            <el-button size="mini" @click="editTuiMoney2()" >冻结</el-button>
+          </div>
+
+<!--          <div class="operate-button-container" v-if="order.status==3&&order.tuiMoneyStatus==null"  v-hasPermi="['store:storeOrder:addTuiMoney']"  >-->
+<!--            <el-button size="mini" @click="addTuiMoney()" >分佣</el-button>-->
+<!--          </div>-->
+
+          <!--        <div class="operate-button-container" v-if="order.extendOrderId!=null"  v-hasPermi="['store:storeOrder:getEroOrder']"  >
+                    <el-button size="mini" @click="showErpOrder()" >查看ERP订单信息</el-button>
+                  </div>-->
+<!--          <div class="operate-button-container" v-if="order.isPayRemain!=null&&order.isPayRemain==1"  v-hasPermi="['store:storeOrder:auditPayRemain']"  >-->
+<!--            <el-button size="mini" @click="auditPayRemain()" >尾款审核</el-button>-->
+<!--          </div>-->
+          <div class="operate-button-container" >
+            <el-button size="mini" @click="editDelivery()">修改物流</el-button>
+          </div>
+          <div class="operate-button-container" v-if="order.status >=1 && order.extendOrderId == null && order.deliveryId == null"  v-hasPermi="['store:storeOrder:createErpOrder']"  >
+            <el-button size="mini" @click="addErpOrder()" >创建ERP订单信息</el-button>
+          </div>
+          <!-- <div class="operate-button-container" v-show="order.status===2">
+            <el-button size="mini"  >去发货</el-button>
+            <el-button size="mini" >备注订单</el-button>
+          </div>
+          <div class="operate-button-container" v-show="order.status===4">
+            <el-button size="mini"  >订单跟踪</el-button>
+            <el-button size="mini"  disabled>备注订单</el-button>
+          </div> -->
+        </div>
+        <div style="margin: 20px 0px">
+          <span class="font-small">基本信息</span>
+        </div>
+        <el-descriptions :column="4" border  >
+          <el-descriptions-item label="订单编号"  >
+                <span v-if="order!=null">
+                  {{order.orderCode}}
+                </span>
+            <el-tag  v-for="(item, index) in createTypeOptions"    v-if="order!=null&&order.orderCreateType==item.dictValue">{{item.dictLabel}}
+            </el-tag>
+          </el-descriptions-item>
+          <el-descriptions-item label="会员"  >
+                <span v-if="user!=null">
+                  {{user.nickname}}({{user.phone}})
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="支付方式"  >
+            <el-tag prop="payType" v-for="(item, index) in payTypeOptions"    v-if="order!=null&&order.payType==item.dictValue">{{item.dictLabel}}
+            </el-tag>
+          </el-descriptions-item>
+          <!--            <el-descriptions-item label="订单类型"  >
+                        <el-tag prop="orderType" v-for="(item, index) in orderTypeOptions"    v-if="order!=null&&order.orderType==item.dictValue">{{item.dictLabel}}</el-tag>
+                      </el-descriptions-item>-->
+          <el-descriptions-item label="物流公司编号"  >
+                <span v-if="order!=null">
+                  {{order.deliverySn}}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="物流公司名称"  >
+                <span v-if="order!=null">
+                  {{order.deliveryName}}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="物流单号"  >
+                <span v-if="order!=null">
+                  {{order.deliveryId}}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="物流状态"  >
+                <span v-if="order!=null">
+                  <el-tag prop="deliveryId" v-for="(item, index) in deliveryStatusOptions"    v-if="order!=null&&order.deliveryStatus==item.dictValue">{{item.dictLabel}}</el-tag>
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="物流跟踪状态"  >
+                <span v-if="order!=null">
+                  <el-tag prop="deliveryId" v-for="(item, index) in deliveryTypeOptions"    v-if="order!=null&&order.deliveryType==item.dictValue">{{item.dictLabel}}</el-tag>
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="物流结算费用"  >
+                <span v-if="order!=null&&order.deliveryPayMoney!=null ">
+                  {{order.deliveryPayMoney.toFixed(2) }}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="快递帐单日期"  >
+                <span v-if="order!=null ">
+                  {{order.deliveryTime }}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="快递结算日期"  >
+                <span v-if="order!=null ">
+                  {{order.deliveryPayTime }}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="推广佣金"  >
+                <span v-if="order!=null ">
+                  {{order.tuiMoney }}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="收货人"  >
+                <span v-if="order!=null ">
+                  {{order.realName }}
+                </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="手机号码"  >
+                <span v-if="order!=null ">
+                  {{order.userPhone }}
+                </span>
+            <el-button icon="el-icon-search" size="mini" @click="handlePhone()" style="margin-left: 20px;" circle v-hasPermi="['store:storeOrder:queryPhone']"></el-button>
+          </el-descriptions-item>
+          <el-descriptions-item label="收货地址"  >
+            <el-popover
+              v-if="order!=null"
+              placement="top-start"
+              title="收货地址"
+              width="300"
+              trigger="hover"
+              :content="order.userAddress">
+              <span slot="reference">{{order.userAddress}}</span>
+              <el-button icon="el-icon-search" size="mini" @click="handleAddress()" style="margin-left: 20px;" circle v-hasPermi="['store:storeOrder:queryAddress']"></el-button>
+            </el-popover>
+          </el-descriptions-item>
+          <el-descriptions-item label="档期归属"  >
+            <el-tag prop="scheduleId" v-for="(item, index) in scheduleOptions"    v-if="order!=null&&order.scheduleId==item.id">{{item.name}}
+            </el-tag>
+          </el-descriptions-item>
+          <el-descriptions-item label="用户备注"  >
+                <span v-if="order!=null">
+                  {{order.mark}}
+                </span>
+          </el-descriptions-item>
+        </el-descriptions>
+        <div style="margin: 20px 0px"  v-if="order!=null && certificates != null">
+        <span class="font-small">
+          凭证信息
+        </span>
+        </div>
+        <el-image
+          v-if="certificates != null"
+          :src="certificates"
+          :preview-src-list="[certificates]"
+          :style="{ width: '100px', height: '100px' }"
+          @click.native="showImageDialog"
+        ></el-image>
+        <el-dialog :visible.sync="dialogVisibleImage" width="10%">
+          <img :src="certificates" style="width: 100%" alt="">
+        </el-dialog>
+        <div style="margin-top: 20px">
+          <span class="font-small">商品信息</span>
+        </div>
+        <el-table
+          border
+          v-if="items!=null"
+          :data="items"
+          size="small"
+          style="width: 100%;margin-top: 20px" >
+          <el-table-column label="商品图片" width="150" align="center">
+            <template slot-scope="scope">
+              <img :src="JSON.parse(scope.row.jsonInfo).image" style="height: 80px">
+            </template>
+          </el-table-column>
+          <el-table-column label="商品编码" width="300" align="center">
+            <template slot-scope="scope">
+              <p>{{JSON.parse(scope.row.jsonInfo).barCode}}</p>
+            </template>
+          </el-table-column>
+          <el-table-column label="商品组合编码" width="300" align="center">
+            <template slot-scope="scope">
+              <p>{{JSON.parse(scope.row.jsonInfo).groupBarCode}}</p>
+            </template>
+          </el-table-column>
+          <el-table-column label="商品名称" width="300" align="center">
+            <template slot-scope="scope">
+              <p>{{JSON.parse(scope.row.jsonInfo).productName}}</p>
+            </template>
+          </el-table-column>
+          <el-table-column label="单价" width="240" align="center">
+            <template slot-scope="scope">
+              <p>¥{{JSON.parse(scope.row.jsonInfo).price.toFixed(2)}}</p>
+            </template>
+          </el-table-column>
+          <el-table-column label="规格" width="240" align="center">
+            <template slot-scope="scope">
+              {{JSON.parse(scope.row.jsonInfo).sku}}
+            </template>
+          </el-table-column>
+          <el-table-column label="数量" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.num}}
+            </template>
+          </el-table-column>
+          <el-table-column label="剂型" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.dosageForm}}
+            </template>
+          </el-table-column>
+          <el-table-column label="通用名称" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.commonName}}
+            </template>
+          </el-table-column>
+          <el-table-column label="批号" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.batchNumber}}
+            </template>
+          </el-table-column>
+          <el-table-column label="注册证书编号" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.drugRegCertNo}}
+            </template>
+          </el-table-column>
+          <el-table-column label="上市许可持有人" width="180" align="center">
+            <template slot-scope="scope">
+              {{scope.row.mah}}
+            </template>
+          </el-table-column>
+          <el-table-column label="处方药" width="240" align="center">
+            <template slot-scope="scope">
+              {{scope.row.isPrescribe!=null&&scope.row.isPrescribe==1?'是':'否'}}
+            </template>
+          </el-table-column>
+          <el-table-column label="小计"  align="center">
+            <template slot-scope="scope" >
+              ¥{{scope.row.num*JSON.parse(scope.row.jsonInfo).price.toFixed(2)}}
+            </template>
+          </el-table-column>
+        </el-table>
+        <div style="float: right;margin: 20px" v-if="order!=null">
+          合计:<span class="color-danger">¥{{order.totalPrice.toFixed(2)}}</span>
+        </div>
+        <div style="margin: 60px 0px 20px 0px">
+          <span class="font-small">费用信息</span>
+        </div>
+        <el-descriptions   :column="4" border  >
+          <el-descriptions-item label="商品合计"  >
+              <span v-if="order!=null">
+                ¥{{order.totalPrice.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="应付金额"  >
+              <span v-if="order!=null">
+                ¥{{order.payPrice.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="运费"  >
+              <span v-if="order!=null">
+                ¥{{order.payPostage.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="优惠券"  >
+              <span v-if="order!=null">
+                ¥{{order.couponPrice.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="积分抵扣"  >
+              <span v-if="order!=null">
+                ¥{{order.deductionPrice.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="实付金额"  >
+              <span v-if="order!=null">
+                ¥{{order.payMoney.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+          <el-descriptions-item label="代收金额"  >
+              <span v-if="order!=null">
+                ¥{{order.payDelivery.toFixed(2)}}
+              </span>
+          </el-descriptions-item>
+        </el-descriptions>
+
+        <div style="margin-top: 20px">
+          <span class="font-small">支付信息</span>
         </div>
-      <el-table
-        border
-        :data="pay"
-        size="small"
-        style="width: 100%;margin-top: 20px" >
+        <el-table
+          border
+          :data="payments"
+          size="small"
+          style="width: 100%;margin-top: 20px" >
           <el-table-column label="支付单号" align="center" prop="payCode" width="120px" />
           <el-table-column label="支付金额" align="center" prop="payMoney" />
           <el-table-column label="类型" align="center" prop="payTypeCode" />
           <el-table-column label="交易单号" align="center" prop="bankTransactionId" />
-          <el-table-column label="银行流水号" align="center" prop="bankSerialNo" />
+          <el-table-column label="银行号" align="center" prop="bankSerialNo" />
           <el-table-column label="创建时间" align="center" prop="createTime" />
           <el-table-column label="支付时间" align="center" prop="payTime" />
-      </el-table>
-             </div>
-
-
-       <div class="contentx" v-if="item!=null">
-     <div class="desct">
-       操作信息
-     </div>
-   <el-table style="margin-top: 20px;width: 100%"
-                 ref="orderHistoryTable"
-                 :data="logs" border>
-         <el-table-column label="操作时间"  width="160" align="center">
-           <template slot-scope="scope">
-             {{scope.row.changeTime}}
-           </template>
-         </el-table-column>
-         <el-table-column label="备注" align="center">
-           <template slot-scope="scope">
-             {{scope.row.changeMessage}}
-           </template>
-         </el-table-column>
-       </el-table>
-     </div>
-                <el-dialog
-                 width="50%"
-                 title="发货"
-                 :visible.sync="sendVisible"
-                 append-to-body @close="sendCancel">
-            <el-form ref="form" :model="form" :rules="rules" label-width="120px">
-                <el-form-item label="快递公司编号" prop="deliveryCode">
-                          <el-input v-model="form.deliveryCode" placeholder="请输入快递公司编号" />
-                        </el-form-item>
-                        <el-form-item label="快递名称" prop="deliveryName">
-                          <el-input v-model="form.deliveryName" placeholder="请输入快递名称" />
-                        </el-form-item>
-                        <el-form-item label="快递单号" prop="deliverySn">
-                          <el-input v-model="form.deliverySn" placeholder="请输入快递单号" />
-                        </el-form-item>
-              </el-form>
-              <div slot="footer" class="dialog-footer">
-                                <el-button type="primary" @click="sendGoods">确 定</el-button>
-                                <el-button @click="sendCancel">取 消</el-button>
-              </div>
+        </el-table>
 
-                </el-dialog>
 
-               <el-dialog :title="expressDialog.title" :visible.sync="expressDialog.open" width="600px" append-to-body>
-                 <div  v-hasPermi="['his:storeOrder:syncExpress']"  >
-                   <el-button size="mini" @click="syncExpress()" >同步快递鸟物流状态</el-button>
-                 </div>
-                 <el-table style="margin-top: 20px;width: 100%"
-                           ref="orderHistoryTable"
-                           :data="traces" border>
-                   <el-table-column label="操作时间"  width="160" align="center">
-                     <template slot-scope="scope">
-                       {{scope.row.AcceptTime}}
-                     </template>
-                   </el-table-column>
-                    <el-table-column label="位置" align="center">
-                     <template slot-scope="scope">
-                       {{scope.row.Location}}
-                     </template>
-                   </el-table-column>
-                   <el-table-column label="描述" align="center">
-                     <template slot-scope="scope">
-                       {{scope.row.AcceptStation}}
-                     </template>
-                   </el-table-column>
-                 </el-table>
-               </el-dialog>
-                <el-dialog :title="editDy.title" :visible.sync="editDy.open" width="600px" append-to-body>
-                  <el-form ref="editDyForm" :model="editDyForm" :rules="editDyRules" label-width="100px">
-                    <el-form-item label="物流单号" prop="deliverySn"  >
-                      <el-input v-model="editDyForm.deliverySn" placeholder="请输入物流单号" />
-                    </el-form-item>
-                  </el-form>
-                  <div slot="footer" class="dialog-footer">
-                    <el-button type="primary" @click="submitEditDyForm">确 定</el-button>
-                    <el-button @click="editDy.open = false">取 消</el-button>
-                  </div>
-                </el-dialog>
-
-               <el-dialog :title="erpDialog.title" :visible.sync="erpDialog.open" width="600px" append-to-body>
-                <div v-if="item!=null&&item.extendOrderId!=null&&item.status==2" style="position: absolute; top: 50px;right: 20px;">
-                  <el-button size="mini" @click="updateExpress()" v-hasPermi="['his:storeOrder:updateExpress']" >同步物流发货</el-button>
-                </div>
-                 <div class="table-layout"  v-if="erpOrder!=null" >
-                  <el-descriptions direction="vertical"   :column="4" border >
-                      <el-descriptions-item label="订单编号" > <span v-if="item!=null"> {{erpOrder.code}}</span></el-descriptions-item>
-                      <el-descriptions-item label="是否代收" ><span v-if="item!=null">{{erpOrder.cod?'是':'否'}}</span></el-descriptions-item>
-                      <el-descriptions-item label="快递编号" ><span v-if="item!=null">{{erpOrder.express_code}}</span></el-descriptions-item>
-                      <el-descriptions-item label="快递名称" ><span v-if="item!=null"> {{erpOrder.express_name}}</span></el-descriptions-item>
-                      <el-descriptions-item label="收货人" ><span v-if="item!=null">{{erpOrder.receiver_name}}</span></el-descriptions-item>
-                      <el-descriptions-item label="电话" ><span v-if="item!=null"> {{erpOrder.receiver_mobile}}</span></el-descriptions-item>
-                      <el-descriptions-item label="地址" ><span v-if="item!=null"> {{erpOrder.receiver_address}}</span></el-descriptions-item>
-                      <el-descriptions-item label="运单号" ><span v-if="item!=null"> {{erpOrder.deliverys!=null&&erpOrder.deliverys.length>0?erpOrder.deliverys[0].mail_no:''}}</span></el-descriptions-item>
-                  </el-descriptions>
-                 </div>
-               </el-dialog>
-              <el-dialog :title="edit.title" :visible.sync="edit.open" width="600px" append-to-body>
-                <el-form ref="editForm" :model="editForm" :rules="editRules" label-width="100px">
+        <div style="margin-top: 20px">
+          <span class="font-small">操作信息</span>
+        </div>
+        <el-table style="margin-top: 20px;width: 100%"
+                  ref="orderHistoryTable"
+                  :data="logs" border>
+          <el-table-column label="操作时间"  width="160" align="center">
+            <template slot-scope="scope">
+              {{scope.row.changeTime}}
+            </template>
+          </el-table-column>
+          <el-table-column label="备注" align="center">
+            <template slot-scope="scope">
+              {{scope.row.changeMessage}}
+            </template>
+          </el-table-column>
+        </el-table>
+
+<!--        <div style="margin-top: 20px">-->
+<!--          &lt;!&ndash; <svg-icon icon-class="marker" style="color: #606266"></svg-icon> &ndash;&gt;-->
+<!--          <span class="font-small">分佣信息</span>-->
+<!--        </div>-->
+<!--        <el-table-->
+<!--          border-->
+<!--          :data="tuiMoneyLogs"-->
+<!--          size="small"-->
+<!--          style="width: 100%;margin-top: 20px" >-->
+<!--          <el-table-column label="公司名称" align="center" prop="companyName" width="120px" />-->
+<!--          <el-table-column label="金额" align="center" prop="money" />-->
+<!--          <el-table-column label="余额" align="center" prop="balance" />-->
+<!--          <el-table-column label="创建时间" align="center" prop="createTime" />-->
+<!--          <el-table-column label="备注" align="center" prop="remark" />-->
+<!--        </el-table>-->
+
+        <div style="margin-top: 20px">
+          <span class="font-small">审批信息</span>
+        </div>
+        <el-table style="margin-top: 20px;width: 100%"
+                  :data="auditLogs" border>
+          <el-table-column label="操作时间"  width="160" align="center">
+            <template slot-scope="scope">
+              {{scope.row.createTime}}
+            </template>
+          </el-table-column>
+          <el-table-column label="备注" align="center">
+            <template slot-scope="scope">
+              {{scope.row.content}}
+            </template>
+          </el-table-column>
+        </el-table>
+      </el-card>
+    </div>
 
-                 <el-form-item label="订单状态" prop="status" >
-                   <el-select v-model="editForm.status" placeholder="请选择状态" clearable size="small" filterable>
-                        <el-option
-                          v-for="dict in orderOptions "
-                          :key="dict.dictValue"
-                          :label="dict.dictLabel"
-                          :value="dict.dictValue"
-                        />
-                      </el-select>
-                   </el-form-item>
-                   <el-form-item label="详情地址" prop="userAddress"  >
-                    <el-input v-model="editForm.userAddress" placeholder="请输入" />
-                  </el-form-item>
-                  <el-form-item label="备注" prop="remark"  >
-                    <el-input v-model="editForm.remark" placeholder="请输入备注" />
-                  </el-form-item>
-                </el-form>
-                <div slot="footer" class="dialog-footer">
-                  <el-button type="primary" @click="submitEditForm">确 定</el-button>
-                </div>
-              </el-dialog>
+    <el-dialog :title="edit.title" :visible.sync="edit.open" width="600px" append-to-body>
+      <el-form ref="editForm" :model="editForm" :rules="editRules" label-width="100px">
+        <!--        <el-form-item label="订单类型" prop="orderType"  >
+                    <el-select style="width: 200px" v-model="editForm.orderType" placeholder="请选择订单类型" clearable size="small" >
+                      <el-option
+                              v-for="item in orderTypeOptions"
+                              :key="item.dictValue"
+                              :label="item.dictLabel"
+                              :value="item.dictValue"
+                            />
+                    </el-select>
+                </el-form-item>-->
+        <el-form-item label="状态" prop="status" >
+          <el-select style="width:220px" v-model="editForm.status" placeholder="请选择状态" clearable size="small">
+            <el-option key="0"  label="待支付" value="0" />
+            <el-option key="1"  label="待发货" value="1" />
+            <el-option key="2"  label="待收货" value="2" />
+            <el-option key="3"  label="交易成功" value="3" />
+<!--            <el-option key="-1"  label="退款中" value="-1" />-->
+<!--            <el-option key="-2"  label="已退款" value="-2" />-->
+<!--            <el-option key="-3"  label="已取消" value="-3" />-->
+          </el-select>
+        </el-form-item>
+        <!--         <el-form-item label="档期归属" prop="scheduleId"  >
+                    <el-select filterable style="width: 200px" v-model="editForm.scheduleId" placeholder="请选择档期" clearable size="small" >
+                      <el-option
+                              v-for="item in scheduleOptions"
+                              :key="item.id"
+                              :label="item.name"
+                              :value="item.id"
+                            />
+                    </el-select>
+                </el-form-item>-->
+        <el-form-item label="详情地址" prop="userAddress"  >
+          <el-input v-model="editForm.userAddress" placeholder="请输入" />
+        </el-form-item>
+        <!-- <el-form-item label="erp单号" prop="extendOrderId"  >
+          <el-input v-model="editForm.extendOrderId" placeholder="请输入" />
+        </el-form-item> -->
+        <el-form-item label="备注" prop="mark"  >
+          <el-input v-model="editForm.mark" placeholder="请输入备注" />
+        </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitEditForm">确 定</el-button>
+      </div>
+    </el-dialog>
+
+    <el-dialog :title="editDy.title" :visible.sync="editDy.open" width="600px" append-to-body>
+      <el-form ref="editDyForm" :model="editDyForm" :rules="editDyRules" label-width="120px">
+        <!--      <div  v-hasPermi="['store:storeOrder:updateErpOrder']"  style="margin-bottom: 20px;" >
+                <el-button size="mini" @click="updateErpOrder" >同步物流单号信息</el-button>
+              </div>-->
+        <el-form-item label="物流公司" prop="deliverySn" >
+          <el-select style="width:220px" v-model="editDyForm.deliverySn" placeholder="请选择" clearable size="small">
+            <el-option key="SF"  label="顺丰" value="SF" />
+            <el-option key="EMS"  label="邮政" value="EMS" />
+            <el-option key="ZTO"  label="中通" value="ZTO" />
+            <el-option key="JD"  label="京东" value="JD" />
+            <el-option key="DBL"  label="德邦" value="DBL" />
+          </el-select>
+        </el-form-item>
+        <el-form-item label="物流单号" prop="deliveryId"  >
+          <el-input v-model="editDyForm.deliveryId" placeholder="请输入物流单号" />
+        </el-form-item>
+
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="submitEditDyForm">确 定</el-button>
+        <el-button @click="editDy.open = false">取 消</el-button>
+      </div>
+    </el-dialog>
+
+    <el-dialog :title="expressDialog.title" :visible.sync="expressDialog.open" width="600px" append-to-body>
+      <!--      <div  v-hasPermi="['store:storeOrder:syncExpress']"  >
+              <el-button size="mini" @click="syncExpress()" >同步快递鸟物流状态</el-button>
+            </div>-->
+      <el-table style="margin-top: 20px;width: 100%"
+                ref="orderHistoryTable"
+                :data="traces" border>
+        <el-table-column label="操作时间"  width="160" align="center">
+          <template slot-scope="scope">
+            {{scope.row.AcceptTime}}
+          </template>
+        </el-table-column>
+        <el-table-column label="位置" align="center">
+          <template slot-scope="scope">
+            {{scope.row.Location}}
+          </template>
+        </el-table-column>
+        <el-table-column label="描述" align="center">
+          <template slot-scope="scope">
+            {{scope.row.AcceptStation}}
+          </template>
+        </el-table-column>
+      </el-table>
+    </el-dialog>
+
+    <el-dialog :title="erpDialog.title" :visible.sync="erpDialog.open" width="600px" append-to-body>
+      <div v-if="order!=null&&order.extendOrderId!=null&&order.status==1"  v-hasPermi="['store:storeOrder:updateExpress']"  >
+        <el-button size="mini" @click="updateExpress()" >同步物流发货</el-button>
+      </div>
+      <div class="table-layout"  v-if="erpOrder!=null">
+        <el-row>
+          <el-col :span="6" class="table-cell-title">订单编号</el-col>
+          <el-col :span="6" class="table-cell-title">是否代收</el-col>
+          <el-col :span="6" class="table-cell-title">快递编号</el-col>
+          <el-col :span="6" class="table-cell-title">快递名称</el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.code}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.cod?'是':'否'}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.express_code}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.express_name}}
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="6" class="table-cell-title">收货人</el-col>
+          <el-col :span="6" class="table-cell-title">电话</el-col>
+          <el-col :span="6" class="table-cell-title">地址</el-col>
+          <el-col :span="6" class="table-cell-title">运单号</el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.receiver_name}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.receiver_mobile}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.receiver_address}}
+          </el-col>
+          <el-col :span="6" class="table-cell">
+            {{erpOrder.deliverys!=null&&erpOrder.deliverys.length>0?erpOrder.deliverys[0].mail_no:''}}
+          </el-col>
+
+        </el-row>
+      </div>
+    </el-dialog>
 
-</div>
+  </div>
 </template>
 
 <script>
-import { updateMoney,getGoods,getEroOrder,editTuiMoney,updateDelivery,createErpOrder,updateExpress, afterSales,sendgoods,logList,listOrder,getExpress,syncExpress, listOrderitem,getOrder, delOrder, addOrder, updateOrder, exportOrder,payment,tuiOrder ,getPrescribe}from "@/api/store/storeOrder";
-  export default {
-      name: "orderDe",
-      props:["data"],
-      data() {
-        return {
-          expressDialog:{
-            title:"物流信息",
-            open:false,
-          },
-          editDy:{
-            title:"修改物流单号",
-            open:false,
-          },
-          editDyForm:{
-            orderId:null,
-            deliveryId:null,
-          },
-          showList:true,
-          edit:{
-            title:"修改订单",
-            open:false,
-          },
-          erpDialog:{
-            title:"ERP订单信息",
-            open:false,
-          },
-          show:{
-            title:"问诊详情",
-            open:false,
-          },
-          pack:{
-            title:"套餐包",
-            open:false,
-          },
-          counts:null,
-          money:null,
-          moneyVisible:false,
-          rules:{},
-          sendVisible:false,
-          logs:[],
-          pay:[],
-          nickName:null,
-          storeName:null,
-          PayOptions:[],
-          orderOptions:[],
-          payStatusOptions:[],
-          express:null,
-          traces:[],
-          sexOptions:[],
-          refundOptions:[],
-          channelOptions:[],
-          tuiOptions:[],
-          orOptions:[],
-          storeOPtions:[],
-          deliveryStatusOptions:[],
-          deliveryPayStatusOptions:[],
-          deliveryTypeOptions:[],
-          orderTypeOptions:[],
-          item:null,
-          erpOrder:null,
-          prod:null,
-          showProd:null,
-          editForm:{
-            orderId:null,
-            status:null,
-            userAddress:null,
-            remark:"",
-          },
-          editDyRules:{
-            deliverySn: [
-              { required: true, message: "物流单号不能为空", trigger: "blur" }
-            ],
-          },
-          editRules:{
-            userAddress: [
-              { required: true, message: "收货地址不能为空", trigger: "blur" }
-            ],
-
-          },
-          mrules:{
-
-          },
-          form: {
-            deliveryCode: null,
-            deliveryName:null,
-            deliverySn:null,
-            orderId:null,
-          }
-        }
+import {afterSales,auditPayRemain,addTuiMoney,syncExpress,updateExpress,getEroOrder,refundOrderMoney, editTuiMoney,getExpress,finishOrder,listStoreOrder, getStoreOrder, delStoreOrder, addStoreOrder, updateStoreOrder, exportStoreOrder,updateDeliveryId, createErpOrder,updateErp,getStoreOrderAddress,getStoreOrderPhone} from "@/api/store/storeOrder";
+export default {
+  name: "order",
+  data() {
+    return {
+      isPrescribe:[],
+      dialogVisibleImage: false,
+      createTypeOptions:[],
+      deliveryStatusOptions:[],
+      deliveryTypeOptions:[],
+      scheduleOptions:[],
+      schedules:[],
+      orderId:null,
+      erpDialog:{
+        title:"ERP订单信息",
+        open:false,
       },
-
-      created() {
-
-        this.getDicts("sys_store_pay_type").then(response => {
-            this.PayOptions = response.data;
-          });
-        this.getDicts("sys_order_status").then(response => {
-            this.orderOptions = response.data;
-          });
-        this.getDicts("sys_order_pay").then(response => {
-            this.payStatusOptions = response.data;
-          });
-        this.getDicts("sys_store_order_type").then(response => {
-            this.orderTypeOptions = response.data;
-          });
-
-        this.getDicts("sys_refund_status").then(response => {
-            this.refundOptions = response.data;
-          });
-        this.getDicts("sys_channel").then(response => {
-            this.channelOptions = response.data;
-          });
-        this.getDicts("sys_tui_money_status").then(response => {
-              this.tuiOptions = response.data;
-          });
-        this.getDicts("sys_company_or").then(response => {
-              this.orOptions = response.data;
-          });
-        this.getDicts("sys_patient_sex").then(response => {
-           this.sexOptions = response.data;
-         });
-         this.getDicts("sys_store_delivery_pay_status").then(response => {
-               this.deliveryPayStatusOptions = response.data;
-             });
-         this.getDicts("sys_store_order_delivery_status").then(response => {
-               this.deliveryStatusOptions = response.data;
-             });
-          this.getDicts("sys_delivery_type").then(response => {
-                this.deliveryTypeOptions = response.data;
-              });
-
+      expressDialog:{
+        title:"物流信息",
+        open:false,
       },
-      methods: {
-
-        editDelivery(){
-          this.editDy.open = true;
-          this.editDyForm.orderId = this.item.orderId;
-          this.editDyForm.deliverySn = this.order.deliverySn;
-        },
-        showListD(){
-          if(this.showList){
-            this.showProd=this.prod
-          }else{
-            this.showProd=[this.prod[0]]
-          }
-          this.showList=this.showList?false:true;
-        },
-
-      showExpress(){
-        this.expressDialog.open=true;
-        getExpress(this.item.orderId).then(response => {
-            this.express = response.data;
-            if(this.express!=null&&this.express.Traces!=null){
-                this.traces=this.express.Traces
-            }
-        });
+      edit:{
+        title:"",
+        open:false,
       },
-
-      //修改订单状态
-      submitEditForm(){
-          this.$refs["editForm"].validate(valid => {
-          if (valid) {
-            updateOrder(this.editForm).then(response => {
-              if (response.code === 200) {
-                this.msgSuccess("操作成功");
-                 this.edit.open = false;
-                getOrder(this.item.orderId).then(response => {
-                  this.item=response.data
-                  that.getlogList(this.item.orderId);
-                  that.$parent.$parent.getList();
-                });
-              }
-            });
-          }
-        });
+      editDy:{
+        title:"修改物流单号",
+        open:false,
       },
-      editOrder(){
-          this.edit.open=true;
-          this.editForm.orderId=this.item.orderId;
-          this.editForm.remark=this.item.remark;
-          this.editForm.status = this.item.status.toString();
-          this.editForm.userAddress = this.item.userAddress.toString();
+      editDyForm:{
+        deliverySn:null,
+        deliveryId:null,
       },
-      updateExpress(){
-        var that=this;
-        this.$confirm('定同步物流信息吗,同步后将自动发货?', "警告", {
-          confirmButtonText: "确定",
-          cancelButtonText: "取消",
-          type: "warning"
-        }).then(function() {
-          var data=that.item.orderId
-          return updateExpress(data);
-        }).then(() => {
-          this.msgSuccess("操作成功");
-        getOrder(this.item.orderId).then(response => {
-          this.item=response.data
-          that.getlogList(this.item.orderId);
-          that.$parent.$parent.getList();
-        });
-        }).catch(function() {});
+      editForm:{
+        orderType:null,
+        status:null,
+        userAddress:null,
+        // extendOrderId:null,
+        scheduleId:null,
+        mark:"",
       },
-        addErpOrder(){
-            var that=this;
-            this.$confirm('是否确认推送管易?', "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(function() {
-              var data=that.item.orderId
-              return createErpOrder(data);
-            }).then(() => {
-              this.msgSuccess("操作成功");
-            getOrder(this.item.orderId).then(response => {
-              this.item=response.data
-              that.getlogList(this.item.orderId);
-              that.$parent.$parent.getList();
-            });
-            }).catch(function() {});
-        },
-        showErpOrder(){
-          this.erpDialog.open=true;
-          var data=this.item.extendOrderId;
-          getEroOrder(data).then(response => {
-              this.erp = response.data;
-              if(response.data.orders!=null&&response.data.orders.length==1){
-                this.erpOrder=response.data.orders[0]
-              }
-          });
-        },
 
-        editTuiMoney1(){
-          var that=this;
-            this.$confirm('是否冻结此订单推广佣金吗?', "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(function() {
-               var data=that.item.orderId;
-              return editTuiMoney(data);
-            }).then(() => {
-              this.msgSuccess("操作成功");
-             getOrder(this.item.orderId).then(response => {
-               this.item=response.data
-               that.getlogList(this.item.orderId);
-               that.$parent.$parent.getList();
-             });
-            }).catch(function() {});
-        },
-        editTuiMoney2(){
-          var that=this;
-            this.$confirm('是否解冻此订单推广佣金吗?', "警告", {
-              confirmButtonText: "确定",
-              cancelButtonText: "取消",
-              type: "warning"
-            }).then(function() {
-              var data=that.item.orderId;
-              return editTuiMoney(data);
-            }).then(() => {
-              this.msgSuccess("操作成功");
-              getOrder(this.item.orderId).then(response => {
-                this.item=response.data
-                that.getlogList(this.item.orderId);
-                that.$parent.$parent.getList();
-              });
-            }).catch(function() {});
-        },
-
-
-        moneyCancel(){
-          this.money=null;
-          this.moneyVisible=false;
+      editDyRules:{
+        deliverySn: [
+          { required: true, message: "物流公司不能为空", trigger: "blur" }
+        ],
+        deliveryId: [
+          { required: true, message: "物流单号不能为空", trigger: "blur" }
+        ],
       },
-        refund(){
-          var that=this;
-          this.$confirm('是否确认申请退款?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-            var data={
-           orderId:that.item.orderId
-               }
-            return afterSales(data);
-          }).then(() => {
-            this.msgSuccess("操作成功");
-            getOrder(this.item.orderId).then(response => {
-                this.item = response.data;
-                this.getlogList(this.item.orderId);
-                this.$parent.$parent.getList();
-            });
-          }).catch(function() {});
-        },
-       finishOrder(){
-           var that=this;
-           this.$confirm('是否确认客户已收货?', "警告", {
-             confirmButtonText: "确定",
-             cancelButtonText: "取消",
-             type: "warning"
-           }).then(function() {
-             var data={
-            orderId:that.item.orderId
-                }
-             return getGoods(data);
-           }).then(() => {
-             this.msgSuccess("操作成功");
-             getOrder(this.item.orderId).then(response => {
-                 this.item = response.data;
-                  this.getlistOrderitem(this.item.orderId);
-                 this.getlogList(this.item.orderId);
-                 this.$parent.$parent.getList();
-             });
-           }).catch(function() {});
-       },
-
-
-       syncExpress(){
-         var that=this;
-           this.$confirm('确定同步物流状态吗', "警告", {
-             confirmButtonText: "确定",
-             cancelButtonText: "取消",
-             type: "warning"
-           }).then(function() {
-             var data=that.item.orderId
-             return syncExpress(data);
-           }).then(() => {
-             this.msgSuccess("操作成功");
-              this.expressDialog.open=false
-           getOrder(this.item.orderId).then(response => {
-             this.item=response.data
-             that.getlogList(this.item.orderId);
-             that.$parent.$parent.getList();
-           });
-           }).catch(function() {});
-       },
-       getInquiryOrder(){
+      editRules:{
+        userAddress: [
+          { required: true, message: "收货地址不能为空", trigger: "blur" }
+        ],
 
-           this.show.open=true;
-           setTimeout(() => {
-                this.$refs.Details.getDetails(this.item.inquiryOrderId);
-           }, 1);
-       },
-      getPackageOrder(){
-           this.pack.open=true;
-           console.log(this.item.packageOrderId)
-           setTimeout(() => {
-                this.$refs.packDetails.getDetails(this.item.packageOrderId);
-           }, 1);
-       },
-      tuiOrder(){
-          var that=this;
-          this.$confirm('是否确认推送到智慧药房?', "警告", {
-            confirmButtonText: "确定",
-            cancelButtonText: "取消",
-            type: "warning"
-          }).then(function() {
-            var data={
-           orderId:that.item.orderId
-               }
-            return tuiOrder(data);
-          }).then(() => {
-            this.msgSuccess("操作成功");
-            getOrder(this.item.orderId).then(response => {
-                this.item = response.data;
-                this.getlogList(this.item.orderId);
-                this.$parent.$parent.getList();
-            });
-          }).catch(function() {});
       },
-      sendCancel(){
-       this.sendVisible = false;
-       this.form={
-         deliveryCode: null,
-         deliveryName:null,
-         deliverySn:null,
-         orderId:null,
-       }
+      orderTypeOptions:[],
+      payTypeOptions:[],
+      statusOptions:[],
+      certificates:null,
+      orderStatus:null,
+      order:null,
+      user:{},
+      logs:[],
+      items:[],
+      express:null,
+      traces:[],
+      payments:[],
+      tuiMoneyLogs:[],
+      erpOrder:null,
+      auditLogs: [],
+    };
   },
-      sendGoods(){
-          this.form.orderId=this.item.orderId;
-          sendgoods(this.form).then(response => {
-                this.msgSuccess("修改成功");
-                this.sendVisible = false;
-                getOrder(this.item.orderId).then(response => {
-                    this.item = response.data;
-                    this.getlogList(this.item.orderId);
-                    this.$parent.$parent.getList();
-                });
-                this.form={
-                deliveryCode: null,
-                deliveryName:null,
-                deliverySn:null,
-                orderId:null,
-              }
-          });
-        },
+  created() {
+    this.getDicts("store_order_delivery_status").then((response) => {
+      this.deliveryStatusOptions = response.data;
+    });
+    this.getDicts("store_order_delivery_type").then((response) => {
+      this.deliveryTypeOptions = response.data;
+    });
+
+    this.getDicts("store_order_type").then((response) => {
+      this.orderTypeOptions = response.data;
+    });
+    this.getDicts("store_order_status").then((response) => {
+      this.statusOptions = response.data;
+    });
+    this.getDicts("store_pay_type").then((response) => {
+      this.payTypeOptions = response.data;
+    });
+    this.getDicts("store_order_create_type").then((response) => {
+      this.createTypeOptions = response.data;
+    });
+  },
+  methods: {
+    handleAddress(){
+      const id = this.order.id;
+      getStoreOrderAddress(id).then(response =>{
+        this.order.userAddress = response.address;
+      })
+    },
+    handlePhone(){
+      const id = this.order.id;
+      getStoreOrderPhone(id).then(response =>{
+        this.order.userPhone = response.userPhone;
+      })
+    },
+    showImageDialog() {
+      this.dialogVisible = true;
+    },
+    syncExpress(){
+      var that=this;
+      this.$confirm('确定同步物流状态吗', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return syncExpress(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    updateErpOrder(){
+      var that=this;
+      this.$confirm('确定同步物流单号信息吗', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return updateErp(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+        this.editDy.open = false
+      }).catch(function() {});
+    },
+    updateExpress(){
+      var that=this;
+      this.$confirm('确定同步物流信息吗,同步后将自动发货', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return updateExpress(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    showErpOrder(){
+      this.erpDialog.open=true;
+      var data={extendOrderId:this.order.extendOrderId};
+      getEroOrder(data).then(response => {
+        this.erp = response.data;
+        if(response.data.orders!=null&&response.data.orders.length==1){
+          this.erpOrder=response.data.orders[0]
+        }
+        console.log(this.erpOrder)
+
+      });
+    },
+    showExpress(){
+      this.expressDialog.open=true;
+      getExpress(this.orderId).then(response => {
+        this.express = response.data;
+        if(this.express!=null&&this.express.Traces!=null){
+          this.traces=this.express.Traces
+        }
 
-        getDetails(orderId,nickName,storeName) {
-          this.nickName=nickName;
-          this.storeName=storeName;
-          this.item=null;
-            getOrder(orderId).then(response => {
-                this.item = response.data;
-                this.getlistOrderitem(orderId);
-                this.getlogList(orderId);
-                this.getPayment(orderId);
-                if(this.item.orderType==2){
-                  this.getCount(this.item.prescribeId);
-                }
-            });
-        },
-        getCount(id){
-          getPrescribe(id).then(response => {
+      });
 
-              this.counts =  JSON.parse(response.data.usageJson).counts
-          });
-        },
-        getOrder(){
-          getOrder(this.item.orderId).then(response => {
-              this.item = response.data;
-              this.getlistOrderitem(this.item.orderId);
-              this.getlogList(this.item.orderId);
-              this.getPayment(this.item.orderId);
-              if(this.item.orderType==2){
-                this.getCount(this.item.prescribeId);
-              }
-          });
-        },
-        submitEditDyForm(){
-            this.$refs["editDyForm"].validate(valid => {
-            if (valid) {
-              console.log(this.editDyForm)
-              updateDelivery(this.editDyForm).then(response => {
-                if (response.code === 200) {
-                  this.msgSuccess("操作成功");
-                  this.editDy.open = false;
-                    getOrder(this.item.orderId).then(response => {
-                        this.item = response.data;
-                        this.getlogList(this.item.orderId);
-                        this.$parent.$parent.getList();
-                    });
-                }
-              });
+    },
+    submitEditForm(){
+      this.$refs["editForm"].validate(valid => {
+        if (valid) {
+          updateStoreOrder(this.editForm).then(response => {
+            if (response.code === 200) {
+              this.msgSuccess("操作成功");
+              this.edit.open = false;
+              this.getOrder(this.order.id);
             }
           });
-        },
 
-        getlistOrderitem(orderId){
-          listOrderitem(orderId).then(response => {
-              this.prod = response.rows;
-              this.showProd=[this.prod[0]]
-          });
-        },
-        getlogList(orderId){
-          logList(orderId).then(response => {
-              this.logs = response.rows;
-          });
-        },
-        getPayment(orderId){
-          payment(orderId).then(response => {
-              console.log(response)
-              this.pay = response.data;
-          });
         }
-      }
-    }
-  </script>
-  <style>
-
-    .content{
-        height: 100%;
-        background-color: #fff;
-        padding: 0px 20px;
-
-    }
-  </style>
-  <style>
-
-    .contentx{
-        height: 100%;
-        background-color: #fff;
-        padding: 0px 20px 20px;
-
+      });
+    },
+    submitEditDyForm(){
+      this.$refs["editDyForm"].validate(valid => {
+        if (valid) {
+          updateDeliveryId(this.editDyForm).then(response => {
+            if (response.code === 200) {
+              this.msgSuccess("操作成功");
+              this.editDy.open = false;
+              this.getOrder(this.order.id);
+            }
+          });
 
-        margin: 20px;
-    }
-    .el-descriptions-item__label.is-bordered-label{
-      font-weight: normal;
-    }
-    .el-descriptions-item__content {
-      max-width: 150px;
-      min-width: 100px;
-    }
-    .desct{
-        padding-top: 20px;
-        padding-bottom: 20px;
-        color: #524b4a;
-        font-weight: bold;
+        }
+      });
+    },
+    editTuiMoney1(){
+      var that=this;
+      this.$confirm('是否冻结此订单推广佣金吗?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return editTuiMoney(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    editTuiMoney2(){
+      var that=this;
+      this.$confirm('是否解冻此订单推广佣金吗?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return editTuiMoney(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    addTuiMoney(){
+      var that=this;
+      this.$confirm('确定手动分佣金吗?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return addTuiMoney(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    refundOrderMoney(){
+      var that=this;
+      this.$confirm('确认退款吗', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return refundOrderMoney(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    finishOrder(){
+      var that=this;
+      this.$confirm('是否确认客户已收货?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return finishOrder(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    auditPayRemain(){
+      var that=this;
+      this.$confirm('是否确认已收尾款?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderId:that.order.id}
+        return auditPayRemain(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    editOrder(){
+      this.edit.open=true;
+      this.editForm.id=this.order.id;
+      this.editForm.mark=this.order.mark
+      this.editForm.orderType=this.order.orderType.toString();
+      this.editForm.status = this.order.status.toString();
+      this.editForm.userAddress = this.order.userAddress.toString();
+      this.editForm.scheduleId = this.order.scheduleId;
+      // this.editForm.extendOrderId = this.order.extendOrderId.toString();
+
+    },
+    //推送管易按钮
+    addErpOrder(){
+      var that=this;
+      this.$confirm('是否确认推送erp?', "警告", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning"
+      }).then(function() {
+        var data={orderCode:that.order.orderCode}
+        return createErpOrder(data);
+      }).then(() => {
+        this.msgSuccess("操作成功");
+        this.getOrder(this.order.id);
+      }).catch(function() {});
+    },
+    editDelivery(){
+      this.editDy.open = true;
+      this.editDyForm.id = this.order.id;
+      this.editDyForm.deliveryId = this.order.deliveryId;
+      this.editDyForm.deliverySn = this.order.deliverySn;
+    },
+    getOrder(orderId){
+      this.orderId=orderId;
+      this.certificates = null;
+      getStoreOrder(orderId).then(response => {
+        this.order = response.order;
+        if(response.order.certificates != null){
+          this.certificates = response.order.certificates;
+        }
+        if(response.order.status != null){
+          this.orderStatus = response.order.status;
+        }
+        this.user = response.user;
+        this.logs = response.logs;
+        this.items = response.items;
+        this.payments=response.payments;
+        this.tuiMoneyLogs=response.tuiMoneyLogs;
+        this.auditLogs = response.auditLogs;
+      });
+    },
+
+    applyFefund(){
+
+    },
+    refund(orderId){
+      var data={
+        orderId:orderId
       }
-  </style>
-
-  <style scoped>
-  .order-content{
-    margin: 10px;
-
-  }
-
-  .operate-container {
-    background: #F2F6FC;
-    height: 60px;
-    margin: -20px -20px 0;
-    line-height: 60px;
-  }
-
-  .operate-button-container {
-    float: right;
-    margin-right: 20px
+      afterSales(data).then(response => {
+        this.getOrder(orderId);
+      });
+    },
   }
-  </style>
+};
+</script>
+<style scoped>
+.order-content{
+  margin: 10px;
+
+}
+
+.operate-container {
+  background: #F2F6FC;
+  height: 60px;
+  margin: -20px -20px 0;
+  line-height: 60px;
+}
+
+.operate-button-container {
+  float: right;
+  margin-right: 20px
+}
+</style>

+ 1 - 1
src/views/store/storeOrder/index.vue

@@ -437,7 +437,7 @@ export default {
     handledetails(row){
         this.show.open=true;
         setTimeout(() => {
-             this.$refs.Details.getDetails(row.orderId,row.nickName,row.storeName);
+             this.$refs.Details.getOrder(row.id);
         }, 1);
         },
     getstoreList() {