协同发货

master
mhsnet 2 months ago
parent d0f751f5cc
commit fac59c1fc5

@ -50,10 +50,10 @@ export function delay(params) {
data, data,
}); });
} }
// 点击延期发货-App // 缺货结单-App
export function finish(params) { export function finish(params) {
let data = { let data = {
orderNumber: params.orderNumber orderNumber: params.orderNumber,
}; };
return request({ return request({
url: "/api/example/YysMaterialProcurementOrder/finish", url: "/api/example/YysMaterialProcurementOrder/finish",
@ -61,3 +61,16 @@ export function finish(params) {
data, data,
}); });
} }
// 发货-App
export function shipments(params) {
let data = {
orderNumber: params.orderNumber,
sendTime: params.sendTime,
sendNumber: params.sendNumber,
};
return request({
url: "/api/example/YysMaterialProcurementOrder/shipments",
method: "POST",
data,
});
}

@ -0,0 +1,171 @@
<template>
<view>
<u-popup
v-model="isShow"
mode="center"
:border-radius="10"
:closeable="true"
@close="fnCancel"
width="90%"
>
<u-row gutter="12">
<u-col span="12">
<view
:style="{ textAlign: 'center', height: '60px', lineHeight: '60px' }"
>
<text
:style="{ fontSize: '40rpx', fontWeight: 500, color: '#1D2129' }"
>发货</text
>
</view>
</u-col>
<u-col span="12" :style="{ margin: '10rpx' }">
<text :style="{ fontSize: '32rpx' }"> 本次发货时间 </text>
<text :style="{ fontSize: '32rpx' }" @click="fnShowPickerA">
{{ sendTime }}
</text>
<u-picker
mode="time"
:default-time="sendTime"
v-model="isShowPickerA"
:params="pickerParams"
@confirm="fnSendTime"
></u-picker>
</u-col>
<u-col span="12" :style="{ margin: '10rpx' }">
<text :style="{ color: 'red' }">*</text> <text>本次发货数量</text>
</u-col>
<u-col span="10">
<view :style="{ textAlign: 'center', margin: '10rpx' }">
<u-input
v-model="sendNumber"
type="number"
:border="true"
placeholder="请输入投产数量"
/>
</view>
</u-col>
<u-col span="2">
<text>{{ orderItem.unit }}</text>
</u-col>
<u-col span="12">
<view :style="{ textAlign: 'center', margin: '25rpx 0rpx' }">
<u-button
size="mini"
shape="circle"
@click="fnCancel"
:custom-style="{
margin: '5px 20px',
padding: '5px 20px',
}"
>
取消
</u-button>
<u-button
size="mini"
shape="circle"
type="primary"
:custom-style="{
margin: '5px 20px',
padding: '5px 20px',
}"
@click="fnOk"
>
确定
</u-button>
</view>
</u-col>
</u-row>
</u-popup>
<u-top-tips ref="uTips"></u-top-tips>
</view>
</template>
<script>
import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
import { mapGetters } from "vuex";
import { shipments } from "@/api/yys/materialProcurementOrder.js";
import dayjs from "dayjs";
export default {
components: {},
mixins: [],
data() {
return {
isShow: false,
sendNumber: undefined,
orderItem: {},
sendTime: dayjs().format("YYYY-MM-DD HH:mm:ss"),
isShowPickerA: false,
pickerParams: {
year: true,
month: true,
day: true,
hour: true,
minute: true,
second: true,
},
};
},
watch: {},
computed: {},
onLoad(params) {},
onUnload() {},
methods: {
init(orderItem) {
this.orderItem = orderItem;
this.sendNumber = undefined;
this.sendTime = dayjs().format("YYYY-MM-DD HH:mm:ss");
this.isShow = true;
},
fnCancel() {
this.orderItem = {};
this.isShow = false;
},
fnOk() {
if (!this.sendNumber) {
this.$refs.uTips.show({
title: "数量不能为空",
type: "error",
duration: "2300",
});
console.log(this.sendNumber);
return true;
}
let _params = {
orderNumber: this.orderItem.orderNumber,
sendTime: dayjs(this.sendTime),
sendNumber: this.sendNumber,
};
shipments(_params)
.then((res) => {
if (res.code == 200) {
this.$emit("evtRefresh");
}
})
.catch((err) => {
console.log(err);
});
this.fnCancel();
},
fnShowPickerA() {
this.isShowPickerA = true;
},
fnSendTime(timeObj) {
this.sendTime =
timeObj.year +
"-" +
timeObj.month +
"-" +
timeObj.day +
" " +
timeObj.hour +
":" +
timeObj.minute +
":" +
timeObj.second;
},
},
};
</script>
<style lang="scss"></style>

@ -103,6 +103,7 @@
}" }"
:plain="true" :plain="true"
shape="circle" shape="circle"
@click="fnShipments(orderItem)"
> >
发货 发货
</u-button> </u-button>
@ -111,6 +112,7 @@
</u-card> </u-card>
<PopToProd ref="popToProd" @evtRefresh="fnRefreshA"></PopToProd> <PopToProd ref="popToProd" @evtRefresh="fnRefreshA"></PopToProd>
<PopDelay ref="popDelay" @evtRefresh="fnRefreshB"></PopDelay> <PopDelay ref="popDelay" @evtRefresh="fnRefreshB"></PopDelay>
<PopShipments ref="popShipments" @evtRefresh="fnRefreshC"></PopShipments>
<u-top-tips ref="uTips"></u-top-tips> <u-top-tips ref="uTips"></u-top-tips>
</view> </view>
</template> </template>
@ -126,8 +128,9 @@ import {
import CustomNavbar from "./components/CustomNavbar"; import CustomNavbar from "./components/CustomNavbar";
import PopToProd from "./components/PopToProd"; import PopToProd from "./components/PopToProd";
import PopDelay from "./components/PopDelay"; import PopDelay from "./components/PopDelay";
import PopShipments from "./components/PopShipments";
export default { export default {
components: { CustomNavbar, PopToProd, PopDelay }, components: { CustomNavbar, PopToProd, PopDelay, PopShipments },
mixins: [], mixins: [],
data() { data() {
return { return {
@ -234,6 +237,9 @@ export default {
fnDelay(orderItem) { fnDelay(orderItem) {
this.$refs.popDelay.init(orderItem); this.$refs.popDelay.init(orderItem);
}, },
fnShipments(orderItem) {
this.$refs.popShipments.init(orderItem);
},
fnRefreshA() { fnRefreshA() {
this.$refs.uTips.show({ this.$refs.uTips.show({
title: "投产提交成功", title: "投产提交成功",
@ -250,6 +256,14 @@ export default {
}); });
this.fnGetList(); this.fnGetList();
}, },
fnRefreshC() {
this.$refs.uTips.show({
title: "发货提交成功",
type: "success",
duration: "2300",
});
this.fnGetList();
},
}, },
}; };
</script> </script>

Loading…
Cancel
Save