Browse Source

fix:积分商品显示

ct 2 weeks ago
parent
commit
51a8d0429b
2 changed files with 61 additions and 29 deletions
  1. 60 28
      src/views/components/his/integralOrderDetails.vue
  2. 1 1
      src/views/his/company/index.vue

+ 60 - 28
src/views/components/his/integralOrderDetails.vue

@@ -19,7 +19,8 @@
                 <el-tag prop="status" v-for="(ite, index) in statusOptions"    v-if="item.status==ite.dictValue">{{ite.dictLabel}}</el-tag>
              </span>
              <div class="operate-button-container"  v-if="item.status==1" v-hasPermi="['his:integralOrder:sendGoods']">
-                <el-button size="mini" @click="sendVisible=true" >发货</el-button>
+                <!-- <el-button size="mini" @click="sendVisible=true" >发货</el-button> -->
+                <el-button size="mini" @click="showSend()" >发货</el-button>
              </div>
             <div class="operate-button-container"   v-if="item.deliverySn!=null" v-hasPermi="['his:integralOrder:express']">
               <el-button size="mini" @click="showExpress()" >查看物流</el-button>
@@ -90,16 +91,25 @@
            title="发货"
            :visible.sync="sendVisible"
            append-to-body @close="sendCancel">
-      <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+        <el-form ref="form" :model="form" :rules="rules" label-width="120px">
+          <el-form-item label="快递名称" prop="deliveryName">
+            <el-select v-model="selectedExpress" placeholder="请选择快递名称" value-key="name">
+              <el-option
+                v-for="item in expressOption"
+                :key="item.name"
+                :label="item.name"
+                :value="item">
+              </el-option>
+            </el-select>
+          </el-form-item>
           <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-input v-model="form.deliveryCode" placeholder="请输入快递公司编号" disabled />
+            
+          </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>
@@ -158,10 +168,13 @@
 
 <script>
 import {getExpress, listIntegralOrder, sendgoods,getIntegralOrder, delIntegralOrder, addIntegralOrder, updateIntegralOrder, exportIntegralOrder,getOrderUserPhone } from "@/api/his/integralOrder";
+import {getExpressList } from "@/api/his/express";
   export default {
     name: "integralOrder",
     data() {
       return {
+        selectedExpress:null,
+        expressOption:[],
         expressDialog:{
           title:"物流信息",
           open:false,
@@ -205,6 +218,17 @@ import {getExpress, listIntegralOrder, sendgoods,getIntegralOrder, delIntegralOr
         this.statusOptions = response.data;
       });
     },
+    watch: {
+      selectedExpress(newVal) {
+        if (newVal) {
+          this.form.deliveryName = newVal.name;
+          this.form.deliveryCode = newVal.code;
+        } else {
+          this.form.deliveryName = '';
+          this.form.deliveryCode = '';
+        }
+      }
+    },
     methods: {
       handlePhone(){
         const orderId = this.item.orderId;
@@ -242,6 +266,14 @@ import {getExpress, listIntegralOrder, sendgoods,getIntegralOrder, delIntegralOr
              orderId:null,
            }
       },
+      showSend(){
+        //获取快递公司信息
+        getExpressList().then(response=>{
+          this.expressOption = response.data;
+        })
+        console.log(this.expressOption)
+        this.sendVisible = true
+      },
       showExpress(){
         this.expressDialog.open=true;
         getExpress(this.item.orderId).then(response => {
@@ -251,29 +283,29 @@ import {getExpress, listIntegralOrder, sendgoods,getIntegralOrder, delIntegralOr
             }
         });
       },
-          sendGoods(){
-              this.form.orderId=this.item.orderId;
-              sendgoods(this.form).then(response => {
-                    this.msgSuccess("修改成功");
-                    this.sendVisible = false;
-                    getIntegralOrder(this.item.orderId).then(response => {
-                        this.item = response.data;
-                        this.$parent.$parent.getList();
-                    });
-
-                    this.form={
-                    deliveryCode: null,
-                    deliveryName:null,
-                    deliverySn:null,
-                    orderId:null,
-                  }
+    sendGoods(){
+        this.form.orderId=this.item.orderId;
+        sendgoods(this.form).then(response => {
+              this.msgSuccess("修改成功");
+              this.sendVisible = false;
+              getIntegralOrder(this.item.orderId).then(response => {
+                  this.item = response.data;
+                  this.$parent.$parent.getList();
               });
-            },
+
+              this.form={
+              deliveryCode: null,
+              deliveryName:null,
+              deliverySn:null,
+              orderId:null,
+            }
+        });
+      },
       getDetails(orderId) {
         this.item=null;
         getIntegralOrder(orderId).then(response => {
             this.item = response.data;
-            this.prod=[JSON.parse(this.item.itemJson)];
+            this.prod=[JSON.parse(this.item.itemJson)][0];
         });
       },
     }

+ 1 - 1
src/views/his/company/index.vue

@@ -501,7 +501,7 @@
           <el-radio v-model="revenueForm.delayAcctFlag" label="N">实时分账</el-radio>
           <el-radio v-model="revenueForm.delayAcctFlag" label="Y">延时分账</el-radio>
         </el-form-item>
-        <el-form-item label="是否使用百分比分账">
+        <el-form-item label="是否使用百分比分账" v-if="revenueForm.divFlag == 1">
           <el-switch
             v-model="revenueForm.percentageFlag"
             active-color="#13ce66"