shish 2 лет назад
Родитель
Сommit
af39f9627e
1 измененных файлов с 95 добавлено и 13 удалено
  1. 95 13
      ghsApp/src/pagesOrder/detail.vue

+ 95 - 13
ghsApp/src/pagesOrder/detail.vue

@@ -4,6 +4,16 @@
 		<view v-if="!$util.isEmpty(detailInfo)" class="info-content_box">
 			<view class="flex-space title">
 				客户
+				<view class="flex" style="font-weight:normal;">
+					<block v-if="detailInfo.status == 2">
+						<button class="admin-button-com bule" @click.stop="directFh(detailInfo)">一键发货</button>
+						<button class="admin-button-com bule" style="margin-left:50upx;" @click.stop="fillNoFh(detailInfo)">填单发货</button>
+					</block>
+					<block v-else>
+						<button disabled="true" class="admin-button-com bule active" style="border:1rpx solid #ccc;">一键发货</button>
+						<button disabled="true" class="admin-button-com bule active" style="margin-left:50upx;border:1rpx solid #ccc;">填单发货</button>
+					</block>
+				</view>
 			</view>
 			<view class="address-des_bx content-box" @click="copyCustom(detailInfo)">
 				<view>
@@ -321,15 +331,15 @@
 		<modal-module :show="freeShipModal" @cancel="modalCancel" @click="freeShipModalClick" content="确认已自取?" color="#333" :size="32" padding="30upx 30upx" ></modal-module>
 
 		<modal-module :show="givePopShow" @click="confirmGive" :maskClosable="true" title="数量" padding="30rpx 30rpx" >
-		<template v-slot:content>
-			<div class="app-modal-input-wrap">
-			<div class="inp-list-line">
-				<div class="line-input">
-				<input type="number" ref="input" style="width:61.8%;text-align:center;" v-model="giveNum" :adjust-position="false" class="inp-input" @focus="giveNum=''" />
+			<template v-slot:content>
+				<div class="app-modal-input-wrap">
+				<div class="inp-list-line">
+					<div class="line-input">
+					<input type="number" ref="input" style="width:61.8%;text-align:center;" v-model="giveNum" :adjust-position="false" class="inp-input" @focus="giveNum=''" />
+					</div>
+				</div>
 				</div>
-			</div>
-			</div>
-		</template>
+			</template>
 		</modal-module>
 
 		<uni-popup ref="modifyRemarkRef" background-color="#fff" type="center" :animation="false" class="class-popup-style">
@@ -342,6 +352,25 @@
 			</view>
 		</uni-popup>
 
+		<modal-module :show="fhLabelShow" @click="fhConfirm" :maskClosable="true" title="物流信息" padding="30rpx 30rpx" >
+			<template v-slot:content>
+				<div class="app-modal-input-wrap">
+				<div class="inp-list-line">
+					<div class="line-label">物流名称</div>
+					<div class="line-input">
+					<input type="text" v-model="fhWl" class="inp-input" />
+					</div>
+				</div>
+				<div class="inp-list-line">
+					<div class="line-label">物流单号</div>
+					<div class="line-input">
+					<input type="number" v-model="fhWlNo" :focus="fhWlFocus" class="inp-input" />
+					</div>
+				</div>
+				</div>
+			</template>
+		</modal-module>
+
 	</view>
 </template>
 
@@ -349,7 +378,7 @@
 import { mapGetters } from "vuex";
 import stepStatus from "./components/stepStatus";
 import TuiListCell from "@/components/plugin/list-cell";
-import { getDetail,debtPay,hasPay, freeShipping,confirmFinish,cancel,modifyRemarkFn } from "@/api/order";
+import { getDetail,debtPay,hasPay, freeShipping,confirmFinish,cancel,modifyRemarkFn,orderFh } from "@/api/order";
 import { getOrderProduct,giveItem } from "@/api/order-item";
 import productMins from "@/mixins/product";
 import { ORDER_STATUS } from "@/utils/declare";
@@ -389,20 +418,23 @@ export default {
 			giveTargetId:0,
 			givePopShow:false,
 			giveNum:1,
-			modifyRemarkText:''
+			modifyRemarkText:'',
+			fhWlInfo:[],
+			fhWlNo:'',
+			fhWl:'顺丰',
+			fhWlFocus:false,
+			fhLabelShow:false
 		};
 	},
 	onPullDownRefresh() {
 		this.init().then(res => {
-		uni.stopPullDownRefresh()
+			uni.stopPullDownRefresh()
 		})
 	},
 	onShow() {
-
         getWeixinId().then(res => {
           this.getappIdList = res.data
         })
-
 		this.init();
 	},
 	onLoad(){
@@ -424,6 +456,56 @@ export default {
 		}
 	},
 	methods: {
+		directFh(info){
+			let that = this
+			that.$util.confirmModal({content:'确认发货?'},() => {
+				orderFh({id:info.id,fhType:0}).then(res=>{
+					if(res.code == 1){
+						that.init()
+						that.$msg('发货成功')
+					}
+				})
+			})
+		},
+		fillNoFh(info){
+			let that = this
+			this.fhLabelShow = true
+			this.fhWlInfo = info
+			setTimeout(x => {
+				this.$nextTick(() => {
+					that.fhWlFocus = true
+				})
+			}, 200)
+		},
+		fhConfirm(val){
+			let that = this
+			if (val.index == 0) {
+				that.fhLabelShow = false
+				that.fhWlFocus = false
+				that.fhWlNo = ''
+				return
+			}
+			if (this.$util.isEmpty(this.fhWl)){
+				that.$msg('请填写物流名称')
+				return false
+			}
+			if (this.$util.isEmpty(this.fhWlNo)){
+				that.$msg('请填写物流单号')
+				return false
+			}
+			let id = that.fhWlInfo.id ? that.fhWlInfo.id : 0
+			that.$util.confirmModal({content:'确认发货?'},() => {
+				orderFh({id:id,fhType:1,fhWl:that.fhWl,fhWlNo:that.fhWlNo}).then(res=>{
+					if(res.code == 1){
+						that.fhLabelShow = false
+						that.fhWlFocus = false
+						that.fhWlNo = ''
+						that.init()
+						that.$msg('发货成功')
+					}
+				})
+			})
+		},
 		cancelModify(){
 			this.$refs.modifyRemarkRef.close()
 		},