Parcourir la source

优化 OrderItem.vue

shizhongqi il y a 10 mois
Parent
commit
469338f7c6
2 fichiers modifiés avec 426 ajouts et 272 suppressions
  1. 425 271
      ghsApp/src/admin/home/components/OrderItem.vue
  2. 1 1
      ghsApp/src/admin/home/order.vue

+ 425 - 271
ghsApp/src/admin/home/components/OrderItem.vue

@@ -1,285 +1,332 @@
 <template>
-    <view>
-      <view @click="pageTo({url:'/pagesOrder/detail?id='+item.id})">
-        <view class="order-top_box" style="position:relative;">
+  <view>
+    <view @click="pageTo({ url: '/pagesOrder/detail?id=' + item.id })">
+      <view class="order-top_box order-top_box--relative">
+        <image
+          class="code-pay-icon"
+          v-if="currentStatus == 1 && item.book == 0"
+          @click.stop="pageTo({ 
+            url: '/admin/billing/toPay',
+            query: { orderId: item.id, orderSn: item.orderSn, actPrice: item.actPrice }
+          })"
+          mode="widthFix"
+          :src="`${constant.imgUrl}/icon/codePay8.png`"
+        ></image>
 
-        <image style="width:105upx;position:absolute;top:80upx;right:12upx;" v-if="currentStatus == 1 && item.book == 0"
-        @click.stop="pageTo({url:'/admin/billing/toPay',query: {orderId:item.id,orderSn:item.orderSn,actPrice:item.actPrice}})"
-         mode="widthFix" :src="`${constant.imgUrl}/icon/codePay8.png`"></image>
-
-        <image style="width: 38upx;height:38upx;border-radius:38upx;" mode="aspectFit" :src="item.customAvatarUrl"></image>
-          <view class="tit"> {{ item.customName || "" }}</view>
-          <view class="other-refund" v-if="item.refund==2">有售后</view>
-          <view class="other-status" v-if="item.debt == 1">赊账</view>
-          <text class="other-book" v-if="item.book == 1" >预订单</text>
-          <text class="other-presell" v-if="item.presell == 1" >预售单</text>
-          <view :class="['status',currentStatus == 4 ? 'buleColor' : currentStatus == 3 ? 'buleColor' : currentStatus == 1 ? 'defColor' : '']">
-            {{currentStatus==1?'待付款':currentStatus==2?'待发货':currentStatus==3?'配送中':currentStatus==4?'已完成':'已取消'}}
-          </view>
+        <image class="avatar-img" mode="aspectFit" :src="item.customAvatarUrl"></image>
+        <view class="tit"> {{ item.customName || '' }}</view>
+        <view class="other-refund" v-if="item.refund == 2">有售后</view>
+        <view class="other-status" v-if="item.debt == 1">赊账</view>
+        <text class="other-book" v-if="item.book == 1">预订单</text>
+        <text class="other-presell" v-if="item.presell == 1">预售单</text>
+        <view :class="['status', currentStatus == 4 ? 'buleColor' : currentStatus == 3 ? 'buleColor' : currentStatus == 1 ? 'defColor' : '']">
+          {{
+            currentStatus == 1 ? '待付款' : currentStatus == 2 ? '待发货' : currentStatus == 3 ? '配送中' : currentStatus == 4 ? '已完成' : '已取消'
+          }}
         </view>
-        <view class="order-list_info">
+      </view>
+      <view class="order-list_info">
         <view class="order-info_box">
-            <view>编号:</view>
-            <view>{{ item.sendNum }}</view>
+          <view>编号:</view>
+          <view>{{ item.sendNum }}</view>
         </view>
         <view class="order-info_box">
-            <view>创建:</view>
-            <view>
-              {{ item.addTime?item.addTime.substr(5,11):'' }}
-            </view>
-            <view v-if="item.addTime && item.payTime && item.payTime!='0000-00-00 00:00:00' && item.addTime.substr(5,5)!=item.payTime.substr(5,5)" style="flex:1;color:#a29696;display:flex;align-items:center;justify-content:flex-end;font-size:28upx;">
-              账单日期 {{ item.payTime?item.payTime.substr(5,11):'' }}
-            </view>
+          <view>创建:</view>
+          <view>
+            {{ item.addTime ? item.addTime.substr(5, 11) : '' }}
+          </view>
+          <view
+            v-if="item.addTime && item.payTime && item.payTime != '0000-00-00 00:00:00' && item.addTime.substr(5, 5) != item.payTime.substr(5, 5)"
+            class="bill-date"
+          >
+            账单日期 {{ item.payTime ? item.payTime.substr(5, 11) : '' }}
+          </view>
         </view>
         <view class="order-info_box">
-            <view>单号:</view>
-            <view>{{ item.orderSn }}</view>
+          <view>单号:</view>
+          <view>{{ item.orderSn }}</view>
         </view>
         <view class="order-info_box">
-            <view>方式:</view>
-            <view>
-              <text v-if="item.localOrder ==0">{{ item.sendType == 0?'送货上门':item.sendType == 1?'到店自取': item.sendType == 2?'代叫配送':item.sendType == 3 ? item.wlName :item.sendType == 4?'发快递':''}}</text>
-              <text v-else>{{ item.transType == 0 ? '德邦物流' : item.transType == 1 ? '顺丰物流' :item.transType == 2 ? '冷链物流':item.transType == 3 ? '航空物流':item.transType == 4 ? '同城配送':item.transType == 5 ? '到店自取':''}}</text>
-            </view>
+          <view>方式:</view>
+          <view>
+            <text v-if="item.localOrder == 0">{{
+              item.sendType == 0
+                ? '送货上门'
+                : item.sendType == 1
+                ? '到店自取'
+                : item.sendType == 2
+                ? '代叫配送'
+                : item.sendType == 3
+                ? item.wlName
+                : item.sendType == 4
+                ? '发快递'
+                : ''
+            }}</text>
+            <text v-else>{{
+              item.transType == 0
+                ? '德邦物流'
+                : item.transType == 1
+                ? '顺丰物流'
+                : item.transType == 2
+                ? '冷链物流'
+                : item.transType == 3
+                ? '航空物流'
+                : item.transType == 4
+                ? '同城配送'
+                : item.transType == 5
+                ? '到店自取'
+                : ''
+            }}</text>
+          </view>
         </view>
         <view class="order-info_box">
-            <view>开单:</view>
-            <view v-if="item.shopAdminId > 0">{{ item.shopAdminName}}</view>
-            <view v-else>{{item.customShopAdminName}}</view>
+          <view>开单:</view>
+          <view v-if="item.shopAdminId > 0">{{ item.shopAdminName }}</view>
+          <view v-else>{{ item.customShopAdminName }}</view>
         </view>
         <view class="order-info_box">
-            <view>数量:</view>
-            <view v-if="item.smallNum > 0">{{ `${item.bigNum}/${item.smallNum}` }}</view>
-            <view v-else>{{ item.bigNum }}</view>
-            <view class="price">
-            <view v-if="item.orderPrice == item.actPrice">¥{{ item.orderPrice ? parseFloat(item.orderPrice):0 }}</view>
+          <view>数量:</view>
+          <view v-if="item.smallNum > 0">{{ `${item.bigNum}/${item.smallNum}` }}</view>
+          <view v-else>{{ item.bigNum }}</view>
+          <view class="price">
+            <view v-if="item.orderPrice == item.actPrice">¥{{ item.orderPrice ? parseFloat(item.orderPrice) : 0 }}</view>
             <view v-else>
-              <text style="text-decoration: line-through;color:#847676;">¥{{ item.orderPrice ? parseFloat(item.orderPrice):0 }}</text>
-              <text style="margin-left:10upx;">¥{{ item.actPrice ? parseFloat(item.actPrice):0 }}</text>
+              <text class="price-old">¥{{ item.orderPrice ? parseFloat(item.orderPrice) : 0 }}</text>
+              <text class="ml-10">¥{{ item.actPrice ? parseFloat(item.actPrice) : 0 }}</text>
             </view>
             <i class="iconfont iconxiangyou"></i>
-            </view>
+          </view>
         </view>
         <view class="order-info_box" v-if="!$util.isEmpty(item.remark)">
-            <view style="color:red;font-weight:bold;">备注:</view>
-            <view style="color:red;font-weight:bold;">{{ item.remark }}</view>
-        </view>
-        <view v-if="item.sameTimeIdsNum && item.sameTimeIdsNum>1" style="text-align: center;color:white;
-        margin-top:20upx;font-size:32upx;background-color:#3780a5ad;padding-top:7upx;padding-bottom:7upx;"
-        @click.stop="pageTo({url:'/admin/order/itemOrder?ids='+item.sameTimeIds})">
-          本客户共有{{item.sameTimeIdsNum}}个订单,可合并发货
+          <view class="text-red-bold">备注:</view>
+          <view class="text-red-bold">{{ item.remark }}</view>
         </view>
+        <view
+          v-if="item.sameTimeIdsNum && item.sameTimeIdsNum > 1"
+          class="merge-tip"
+          @click.stop="pageTo({ url: '/admin/order/itemOrder?ids=' + item.sameTimeIds })"
+        >
+          本客户共有{{ item.sameTimeIdsNum }}个订单,可合并发货
         </view>
-        <view class="list-bottom">
-            <view class="list-button">
-                <view><button @click.stop="shareOrder(item)" open-type="share" class="admin-button-com bule">分享</button> </view>
-                <block v-if="currentStatus == 2">
-                  <block v-if="item.book == 0">
-                    <view><button @click.stop="directFh(item)" class="admin-button-com bule">发货</button> </view>
-                  </block>
-                  <block v-else>
-                    <view><button @click.stop="confirmFh(item)" class="admin-button-com bule">确认发货</button> </view>
-                  </block>
-                </block>
-                <block v-else>
-                  <view><button disabled="true" class="admin-button-com bule active">发货</button> </view>
-                </block>
-                <view v-if="currentStatus == 1">
-                  <button disabled="true" class="admin-button-com bule active">打印(${item.printNum})</button>
-                </view>
-                <view v-else>
-                  <button @click.stop="printOrder(item)" class="admin-button-com bule">打印<text>({{item.printNum}})</text></button>
-                </view>
-                <view>
-                  <button @click.stop="openMore(item)" class="admin-button-com bule">更多</button>
-                </view>
-            </view>
+      </view>
+      <view class="list-bottom">
+        <view class="list-button">
+          <view><button @click.stop="shareOrder(item)" open-type="share" class="admin-button-com bule">分享</button> </view>
+          <block v-if="currentStatus == 2">
+            <block v-if="item.book == 0">
+              <view><button @click.stop="directFh(item)" class="admin-button-com bule">发货</button> </view>
+            </block>
+            <block v-else>
+              <view><button @click.stop="confirmFh(item)" class="admin-button-com bule">确认发货</button> </view>
+            </block>
+          </block>
+          <block v-else>
+            <view><button disabled="true" class="admin-button-com bule active">发货</button> </view>
+          </block>
+          <view v-if="currentStatus == 1">
+            <button disabled="true" class="admin-button-com bule active">打印(${item.printNum})</button>
+          </view>
+          <view v-else>
+            <button @click.stop="printOrder(item)" class="admin-button-com bule">
+              打印<text>({{ item.printNum }})</text>
+            </button>
+          </view>
+          <view>
+            <button @click.stop="openMore(item)" class="admin-button-com bule">更多</button>
+          </view>
         </view>
-
       </view>
+    </view>
 
-      <uni-popup ref="morePopup" background-color="#fff" type="center" :animation="true" class="class-popup-style">
-        <view style="padding:50upx 40upx;width:70vw;">
-          <view style="text-align: center;"><button class="admin-button-com" style="margin:0 auto 30upx auto;width:240upx;height:80upx;line-height: 80upx;font-size:29upx;" @click="addExpress(item)">顺丰下单</button></view>
-          <view style="text-align: center;"><button class="admin-button-com" style="margin:0 auto 30upx auto;width:240upx;height:80upx;line-height: 80upx;font-size:29upx;" @click="cancelExpress(item)">取消顺丰订单</button></view>
-          <view style="text-align: center;"><button class="admin-button-com" style="margin:0 auto 30upx auto;width:240upx;height:80upx;line-height: 80upx;font-size:29upx;" @click="fillNoFh(item)">填单发货</button></view>
-          <view style="text-align: center;"><button class="admin-button-com" style="margin:0 auto 30upx auto;width:240upx;height:80upx;line-height: 80upx;font-size:29upx;" @click="sim(item)">模拟</button></view>
-          <view style="text-align: center;"><button class="admin-button-com default" @click="closeMore" style="margin:10upx auto 0 auto;width:240upx;height:80upx;line-height: 80upx;font-size:29upx;">取消</button></view>
-        </view>
-      </uni-popup>
+    <uni-popup ref="morePopup" background-color="#fff" type="center" :animation="true" class="class-popup-style">
+      <view class="more-popup-content">
+        <view class="text-center popup-btn-wrap"><button class="admin-button-com popup-btn" @click="addExpress(item)">顺丰下单</button></view>
+        <view class="text-center popup-btn-wrap"><button class="admin-button-com popup-btn" @click="cancelExpress(item)">取消顺丰订单</button></view>
+        <view class="text-center popup-btn-wrap"><button class="admin-button-com popup-btn" @click="fillNoFh(item)">填单发货</button></view>
+        <view class="text-center popup-btn-wrap"><button class="admin-button-com popup-btn" @click="sim(item)">模拟</button></view>
+        <view class="text-center popup-btn-wrap popup-btn-wrap--last"
+          ><button class="admin-button-com default popup-btn" @click="closeMore">取消</button></view
+        >
+      </view>
+    </uni-popup>
 
-      <!-- 新增物流下单弹窗 -->
-      <uni-popup ref="expressAddressRef" background-color="#fff" type="center" :animation="true" class="class-popup-style" :mask-click="false">
-        <view style="padding:40upx 50upx;width:96vw;">
-          <view style="font-size:32upx;font-weight:bold;text-align:center;margin-bottom:30upx;">发货信息</view>
-          <view style="display:flex;flex-direction:column;gap:18upx;">
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;white-space:nowrap;">包裹数量:</view>
-              <input style="flex:1;font-size:28upx;border:1px solid #eee;padding:0 12upx;border-radius:8upx;height:60upx;line-height:60upx;" type="number" v-model="wlPackageNum" placeholder="请输入包裹数量" />
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;white-space:nowrap;">重量(kg):</view>
-              <input style="flex:1;font-size:28upx;border:1px solid #eee;padding:0 12upx;border-radius:8upx;height:60upx;line-height:60upx;" type="digit" v-model="wlWeight" placeholder="请输入重量" />
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;white-space:nowrap;">长度(cm):</view>
-              <input style="flex:1;font-size:28upx;border:1px solid #eee;padding:0 12upx;border-radius:8upx;height:60upx;line-height:60upx;" type="number" v-model="wlLength" placeholder="请输入长度" />
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;white-space:nowrap;">宽度(cm):</view>
-              <input style="flex:1;font-size:28upx;border:1px solid #eee;padding:0 12upx;border-radius:8upx;height:60upx;line-height:60upx;" type="number" v-model="wlWidth" placeholder="请输入宽度" />
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;white-space:nowrap;">高度(cm):</view>
-              <input style="flex:1;font-size:28upx;border:1px solid #eee;padding:0 12upx;border-radius:8upx;height:60upx;line-height:60upx;" type="number" v-model="wlHeight" placeholder="请输入高度" />
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;">城市:</view>
-              <view style="flex:1;font-size:28upx;">{{ receiverCity }}</view>
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;">地址:</view>
-              <view style="flex:1;font-size:28upx;">{{ receiverAddress }}{{ receiverFloor }}</view>
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;">姓名:</view>
-              <view style="flex:1;font-size:28upx;">{{ receiverName }}</view>
-            </view>
-            <view style="display:flex;align-items:center;">
-              <view style="width:135upx;color:#888;font-size:28upx;">电话:</view>
-              <view style="flex:1;font-size:28upx;">{{ receiverMobile }}</view>
-            </view>
+    <!-- 新增物流下单弹窗 -->
+    <uni-popup ref="expressAddressRef" background-color="#fff" type="center" :animation="true" class="class-popup-style" :mask-click="false">
+      <view class="express-popup-content">
+        <view class="express-title">发货信息</view>
+        <view class="express-form">
+          <view class="form-row">
+            <view class="form-label">包裹数量:</view>
+            <input class="form-input" type="number" v-model="wlPackageNum" placeholder="请输入包裹数量" />
+          </view>
+          <view class="form-row">
+            <view class="form-label">重量(kg):</view>
+            <input class="form-input" type="digit" v-model="wlWeight" placeholder="请输入重量" />
+          </view>
+          <view class="form-row">
+            <view class="form-label">长度(cm):</view>
+            <input class="form-input" type="number" v-model="wlLength" placeholder="请输入长度" />
           </view>
-          <view style="display:flex;justify-content:space-around;margin-top:40upx;">
-            <button class="admin-button-com default" style="width:160upx;" @click="closeExpressPop">取消</button>
-            <button class="admin-button-com bule" style="width:160upx;" @click="modifyAddress(item)">修改地址</button>
-            <button class="admin-button-com bule" style="width:160upx;" @click="confirmAddExpress(item)">提交</button>
+          <view class="form-row">
+            <view class="form-label">宽度(cm):</view>
+            <input class="form-input" type="number" v-model="wlWidth" placeholder="请输入宽度" />
+          </view>
+          <view class="form-row">
+            <view class="form-label">高度(cm):</view>
+            <input class="form-input" type="number" v-model="wlHeight" placeholder="请输入高度" />
+          </view>
+          <view class="form-row">
+            <view class="form-label">城市:</view>
+            <view class="form-value">{{ receiverCity }}</view>
+          </view>
+          <view class="form-row">
+            <view class="form-label">地址:</view>
+            <view class="form-value">{{ receiverAddress }}{{ receiverFloor }}</view>
+          </view>
+          <view class="form-row">
+            <view class="form-label">姓名:</view>
+            <view class="form-value">{{ receiverName }}</view>
+          </view>
+          <view class="form-row">
+            <view class="form-label">电话:</view>
+            <view class="form-value">{{ receiverMobile }}</view>
           </view>
         </view>
-      </uni-popup>
-
-    </view>
+        <view class="form-actions">
+          <button class="admin-button-com default btn-sm" @click="closeExpressPop">取消</button>
+          <button class="admin-button-com bule btn-sm" @click="modifyAddress(item)">修改地址</button>
+          <button class="admin-button-com bule btn-sm" @click="confirmAddExpress(item)">提交</button>
+        </view>
+      </view>
+    </uni-popup>
+  </view>
 </template>
 <script>
-import { getUserDet } from "@/api/member";
-import { createExpressOrder,cancelExpressOrder,testUpdate } from "@/api/express";
+import { getUserDet } from '@/api/member';
+import { createExpressOrder, cancelExpressOrder, testUpdate } from '@/api/express';
 export default {
-	name: "OrderItem",
-	components: {
-	},
-	props: {
-	  item: {
-			required: true
-		},
-	   isScanEnv:{
-			type: Boolean,
-			default: false
-	  }
-	},
-	data() {
-		return {
-      currentStatus:0,
+  name: 'OrderItem',
+  components: {},
+  props: {
+    item: {
+      required: true
+    },
+    isScanEnv: {
+      type: Boolean,
+      default: false
+    }
+  },
+  data() {
+    return {
+      currentStatus: 0,
       wlPackageNum: 1,
       wlWeight: '',
-      wlLength:100,
+      wlLength: 100,
       wlWidth: 70,
       wlHeight: 50,
       receiverCity: '',
       receiverAddress: '',
-      receiverFloor:'',
-      receiverName:'',
-      receiverMobile:'',
+      receiverFloor: '',
+      receiverName: '',
+      receiverMobile: ''
     };
-	},
-	mounted(){
-		if(this.item.status){
-      this.currentStatus = this.item.status
-		}
-	},
-	methods: {
-    modifyAddress(item){
-      this.closeExpressPop()
-      this.$util.pageTo({url: "/pagesClient/member/modify?id="+item.customId+"&name="+item.customName})
+  },
+  mounted() {
+    if (this.item.status) {
+      this.currentStatus = this.item.status;
+    }
+  },
+  methods: {
+    modifyAddress(item) {
+      this.closeExpressPop();
+      this.$util.pageTo({ url: '/pagesClient/member/modify?id=' + item.customId + '&name=' + item.customName });
     },
-    shareOrder(info){
-      this.$emit('shareOrder',info)
+    shareOrder(info) {
+      this.$emit('shareOrder', info);
     },
-    directFh(info){
-			this.$emit('directFh', info)
+    directFh(info) {
+      this.$emit('directFh', info);
     },
-    confirmFh(info){
-      this.$util.pageTo({url: "/pagesOrder/arrival?id="+info.id})
+    confirmFh(info) {
+      this.$util.pageTo({ url: '/pagesOrder/arrival?id=' + info.id });
     },
-    fillNoFh(info){
-      this.closeMore()
-			this.$emit('fillNoFh', info)
+    fillNoFh(info) {
+      this.closeMore();
+      this.$emit('fillNoFh', info);
     },
-		printOrder(item) {
-      let that = this
-      if(item.printNum && Number(item.printNum)>0){
-        this.$util.confirmModal({content:'请检查是否发过货,确认补打?'},() => {
-          that.$emit('printOrder', item)
-        })
-      }else{
-        that.$emit('printOrder', item)
+    printOrder(item) {
+      let that = this;
+      if (item.printNum && Number(item.printNum) > 0) {
+        this.$util.confirmModal({ content: '请检查是否发过货,确认补打?' }, () => {
+          that.$emit('printOrder', item);
+        });
+      } else {
+        that.$emit('printOrder', item);
       }
-		},
+    },
     openMore(item) {
       this.$refs.morePopup.open('center');
     },
     closeMore() {
       this.$refs.morePopup.close();
     },
-    sim(item){
+    sim(item) {
       //testUpdate({id:item.id}).then(res=>{ })
     },
     addExpress(item) {
-      this.closeMore()
-      getUserDet({id:item.customId}).then(res=>{
-        if(res.code == 1){
-          this.receiverCity = res.data.city
-          this.receiverAddress = res.data.address
-          this.receiverFloor = res.data.floor
-          this.receiverName = res.data.name
-          this.receiverMobile = res.data.mobile
+      this.closeMore();
+      getUserDet({ id: item.customId }).then((res) => {
+        if (res.code == 1) {
+          this.receiverCity = res.data.city;
+          this.receiverAddress = res.data.address;
+          this.receiverFloor = res.data.floor;
+          this.receiverName = res.data.name;
+          this.receiverMobile = res.data.mobile;
         }
-      })
+      });
       this.$refs.expressAddressRef.open('center');
     },
-    cancelExpress(item){
-      this.$util.confirmModal({content:'确认取消?'},() => {
-        cancelExpressOrder({id:item.id}).then(res=>{
-          if(res.code == 1){
-            this.$msg(res.msg)
-            this.closeMore()
+    cancelExpress(item) {
+      this.$util.confirmModal({ content: '确认取消?' }, () => {
+        cancelExpressOrder({ id: item.id }).then((res) => {
+          if (res.code == 1) {
+            this.$msg(res.msg);
+            this.closeMore();
           }
-        })
-      })
+        });
+      });
     },
     closeExpressPop() {
       this.$refs.expressAddressRef.close();
     },
     confirmAddExpress(item) {
-        if(Number(this.wlWeight)<=0){
-          this.$msg('请填写重量')
-          return false
-        }
-        this.$util.confirmModal({content:'确认提交?'},() => {
-          createExpressOrder({id:item.id,weight:Number(this.wlWeight),length:this.wlLength,width:this.wlWidth,height:this.wlHeight,packageNum:this.wlPackageNum}).then(res=>{
-            if(res.code == 1){
-              this.$msg(res.msg)
-              this.closeExpressPop()
-            }
-          })
-        })
-    },
-	}
+      if (Number(this.wlWeight) <= 0) {
+        this.$msg('请填写重量');
+        return false;
+      }
+      this.$util.confirmModal({ content: '确认提交?' }, () => {
+        createExpressOrder({
+          id: item.id,
+          weight: Number(this.wlWeight),
+          length: this.wlLength,
+          width: this.wlWidth,
+          height: this.wlHeight,
+          packageNum: this.wlPackageNum
+        }).then((res) => {
+          if (res.code == 1) {
+            this.$msg(res.msg);
+            this.closeExpressPop();
+          }
+        });
+      });
+    }
+  }
 };
 </script>
 
 <style lang="scss" scoped>
-.class-popup-style{
-	z-index:999999;
+.class-popup-style {
+  z-index: 999999;
 }
 .admin-button-com {
   width: 140upx;
@@ -294,33 +341,33 @@ export default {
 }
 .list-top,
 .list-bottom {
-    padding: 15upx 30upx;
-    border-bottom: 1upx solid $borderColor;
-    color: $fontColor3;
-    .freight-text {
-        margin-right: 60upx;
-    }
+  padding: 15upx 30upx;
+  border-bottom: 1upx solid $borderColor;
+  color: $fontColor3;
+  .freight-text {
+    margin-right: 60upx;
+  }
 }
 .list-bottom {
-    & > div {
-        display: flex;
-        justify-content: space-between;
-        align-items: center;
-    }
-    .list-button {
-        width: 100%;
-        display: flex;
-        flex-wrap: wrap;
-        justify-content: space-around;
-        align-items: center;
-        .admin-button-com {
-            margin: 0 6upx 12upx 6upx;
-            min-width: 90upx;
-            max-width: 140upx;
-            flex: none;
-            box-sizing: border-box;
-        }
+  & > div {
+    display: flex;
+    justify-content: space-between;
+    align-items: center;
+  }
+  .list-button {
+    width: 100%;
+    display: flex;
+    flex-wrap: wrap;
+    justify-content: space-around;
+    align-items: center;
+    .admin-button-com {
+      margin: 0 6upx 12upx 6upx;
+      min-width: 90upx;
+      max-width: 140upx;
+      flex: none;
+      box-sizing: border-box;
     }
+  }
 }
 .order-top_box {
   display: flex;
@@ -333,49 +380,49 @@ export default {
     font-weight: 650;
     margin-left: 15upx;
   }
-  & > .other-presell{
+  & > .other-presell {
     text-align: center;
     color: white;
-    border:2upx solid #059240;
-    border-radius:30upx;
-    padding:5upx 10upx;
-    font-size:20upx;
-    background:#059240;
-    margin-right:20upx;
-    width:auto;
+    border: 2upx solid #059240;
+    border-radius: 30upx;
+    padding: 5upx 10upx;
+    font-size: 20upx;
+    background: #059240;
+    margin-right: 20upx;
+    width: auto;
   }
-  & > .other-book{
+  & > .other-book {
     text-align: center;
     color: white;
-    border:2upx solid #657cac;
-    border-radius:30upx;
-    padding:5upx 10upx;
-    font-size:20upx;
-    background:#657cac;
-    margin-right:20upx;
-    width:auto;
+    border: 2upx solid #657cac;
+    border-radius: 30upx;
+    padding: 5upx 10upx;
+    font-size: 20upx;
+    background: #657cac;
+    margin-right: 20upx;
+    width: auto;
   }
-  & > .other-refund{
+  & > .other-refund {
     text-align: center;
     color: white;
     background-color: #0e7ed8;
-    border:2upx solid #0e7ed8;
-    border-radius:30upx;
-    padding:5upx 12upx;
-    font-size:20upx;
-    margin-right:20upx;
-    width:auto;
+    border: 2upx solid #0e7ed8;
+    border-radius: 30upx;
+    padding: 5upx 12upx;
+    font-size: 20upx;
+    margin-right: 20upx;
+    width: auto;
   }
-  & > .other-status{
+  & > .other-status {
     text-align: center;
     color: white;
     background-color: #ff2842;
-    border:2upx solid red;
-    border-radius:30upx;
-    padding:5upx 12upx;
-    font-size:20upx;
-    margin-right:20upx;
-    width:auto;
+    border: 2upx solid red;
+    border-radius: 30upx;
+    padding: 5upx 12upx;
+    font-size: 20upx;
+    margin-right: 20upx;
+    width: auto;
   }
   & > .status {
     flex: 2;
@@ -441,4 +488,111 @@ input:-ms-input-placeholder {
 input::-ms-input-placeholder {
   line-height: 60upx;
 }
-</style>
+
+/* 新增:由内联样式迁移的类 */
+.order-top_box--relative {
+  position: relative;
+}
+.code-pay-icon {
+  width: 105upx;
+  position: absolute;
+  top: 80upx;
+  right: 12upx;
+}
+.avatar-img {
+  width: 38upx;
+  height: 38upx;
+  border-radius: 38upx;
+}
+.bill-date {
+  flex: 1;
+  color: #a29696;
+  display: flex;
+  align-items: center;
+  justify-content: flex-end;
+  font-size: 28upx;
+}
+.price-old {
+  text-decoration: line-through;
+  color: #847676;
+}
+.ml-10 {
+  margin-left: 10upx;
+}
+.text-red-bold {
+  color: red;
+  font-weight: bold;
+}
+.merge-tip {
+  text-align: center;
+  color: white;
+  margin-top: 20upx;
+  font-size: 32upx;
+  background-color: #3780a5ad;
+  padding-top: 7upx;
+  padding-bottom: 7upx;
+}
+.more-popup-content {
+  padding: 50upx 10upx;
+  width: 75vw;
+}
+.text-center {
+  text-align: center;
+}
+.popup-btn {
+  margin: 0 auto 30upx 8upx;
+  width: 230upx;
+  height: 80upx;
+  line-height: 80upx;
+  font-size: 29upx;
+}
+.popup-btn-wrap--last .popup-btn {
+  margin: 10upx auto 0 8upx;
+}
+.express-popup-content {
+  padding: 40upx 50upx;
+  width: 96vw;
+}
+.express-title {
+  font-size: 32upx;
+  font-weight: bold;
+  text-align: center;
+  margin-bottom: 30upx;
+}
+.express-form {
+  display: flex;
+  flex-direction: column;
+  gap: 18upx;
+}
+.form-row {
+  display: flex;
+  align-items: center;
+}
+.form-label {
+  width: 135upx;
+  color: #888;
+  font-size: 28upx;
+  white-space: nowrap;
+}
+.form-input {
+  flex: 1;
+  font-size: 28upx;
+  border: 1px solid #eee;
+  padding: 0 12upx;
+  border-radius: 8upx;
+  height: 60upx;
+  line-height: 60upx;
+}
+.form-value {
+  flex: 1;
+  font-size: 28upx;
+}
+.form-actions {
+  display: flex;
+  justify-content: space-around;
+  margin-top: 40upx;
+}
+.btn-sm {
+  width: 160upx;
+}
+</style>

+ 1 - 1
ghsApp/src/admin/home/order.vue

@@ -28,7 +28,7 @@
       </view>
       <view> <AppSearchModule placeholder="这里搜索" @input="searchFn"/> </view>
       <view>
-        <button class="admin-button-com big" style="width:120upx;margin-left:16upx;" @click="getMore()">更多</button>
+        <button class="admin-button-com big" style="width:120upx;margin-left:16upx;margin-top:10upx;" @click="getMore()">更多</button>
       </view>
 
     </view>