Commit 45a9a325 by liangjianmin

feat(tallyReceive): 添加拆货提醒弹窗及样式

- 新增拆货提醒弹窗,包含任务信息和操作按钮
- 更新样式以支持弹窗的视觉展示,提升用户体验
- 增加逻辑以检查选中的理货任务是否需要拆货,并触发弹窗显示
parent 2b12104c
.tallyReceive {
padding: 15rpx 22rpx;
// 拆货提醒弹窗样式
.apart-popup {
width: 100%;
background: #ffffff;
border-radius: 16rpx;
overflow: hidden;
margin: 0 auto;
.apart-title {
height: 90rpx;
line-height: 90rpx;
text-align: left;
padding-left: 30rpx;
font-size: 32rpx;
font-weight: bold;
color: #292b33;
border-bottom: 1px solid #f0f0f2;
}
.apart-content {
padding: 30rpx;
.apart-tips {
font-size: 26rpx;
color: #484b59;
line-height: 40rpx;
margin-bottom: 30rpx;
text-align: left;
}
.apart-info {
background: #f8f8f9;
border-radius: 12rpx;
padding: 24rpx;
.info-row {
display: flex;
align-items: flex-start;
margin-bottom: 20rpx;
font-size: 26rpx;
line-height: 40rpx;
&:last-child {
margin-bottom: 0;
}
.label {
color: #919399;
flex-shrink: 0;
min-width: 180rpx;
}
.value {
color: #292b33;
flex: 1;
word-break: break-all;
}
&.highlight {
.label,
.value {
color: #292b33;
font-weight: bold;
}
}
}
}
}
.apart-actions {
height: 100rpx;
border-top: 1px solid #f0f0f2;
padding: 0 30rpx;
.close-btn,
.single-btn {
width: 240rpx;
height: 70rpx;
border-radius: 12rpx;
font-size: 28rpx;
}
.close-btn {
background: #f0f0f2;
color: #484b59;
}
.single-btn {
background: #1969f9;
color: #ffffff;
}
}
}
.search-box {
border: 1px solid transparent;
height: 60rpx;
......
......@@ -170,6 +170,37 @@
</view>
<view class="btn2 row rowCenter verCenter" @click="showDrawer()" :class="{ 'btn-disabled': !is_submit }">一键理货</view>
</view>
<!-- 拆货提醒弹窗 -->
<uni-popup ref="apartPopup" type="center">
<view class="apart-popup">
<view class="apart-title">拆货提醒</view>
<view class="apart-content">
<view class="apart-tips">选中的理货任务含有需要拆货的任务,请进行单独理货</view>
<view class="apart-info">
<view class="info-row">
<text class="label">入仓号:</text>
<text class="value">{{ apartItem.inhouse }}</text>
</view>
<view class="info-row">
<text class="label">型号:</text>
<text class="value">{{ apartItem.goods_name }}</text>
</view>
<view class="info-row highlight">
<text class="label">待理货数量:</text>
<text class="value">{{ apartItem.wait_tally_qty }}</text>
</view>
<view class="info-row highlight">
<text class="label">销售需拆货:</text>
<text class="value">{{ apartItem.apart_todo_qty || 0 }}</text>
</view>
</view>
</view>
<view class="apart-actions row bothSide verCenter">
<view class="close-btn row rowCenter verCenter" @click="closeApartPopup()">关闭弹窗</view>
<view class="single-btn row rowCenter verCenter" @click="goToSingleTally()">去单独理货</view>
</view>
</view>
</uni-popup>
<!-- 一键理货弹窗 -->
<uni-drawer ref="showRight" mode="right">
<view class="uni-drawer-tally-receive">
......@@ -265,6 +296,7 @@
is_watch: false, //是否看货
isRequestSent: false,
isStopRequest: false,
apartItem: {}, //拆货任务信息
searchParams: {
mobile_wait_tally_all_search: '', //全量搜索
stock_in_with_stock_in_items_inhouse: '', //入仓单号
......@@ -834,6 +866,17 @@
});
return false;
}
// 检查选中的理货任务是否包含需要拆货的任务
var selectedIndexes = this.findIndex(this.filter_list, true);
var apartItem = selectedIndexes.map(i => this.list[i]).find(item => item.is_apart == 1);
if (apartItem) {
this.apartItem = apartItem;
this.$refs.apartPopup.open();
return false;
}
this.image_list = []; //清空图片列表
this.server_image_list = []; //清空服务器图片列表
this.formParams.image_ids = ''; //每次打开先清空图片集合
......@@ -847,6 +890,28 @@
this.$refs.showRight.close();
},
/**
* 关闭拆货提醒弹窗
*/
closeApartPopup() {
this.$refs.apartPopup.close();
},
/**
* 去单独理货
*/
goToSingleTally() {
this.$refs.apartPopup.close();
uni.navigateTo({
url: '/pages/tallyReceive/operate?stock_in_item_id=' + this.apartItem.stock_in_item_id +
'&stock_in_id=' + this.apartItem.stock_in_id +
'&container_id=' + this.searchParams.container_id +
'&container_name=' + this.searchParams.container_name +
'&flag=' + this.fastParams.flag +
'&qty=' + this.fastParams.qty +
'&batch=' + this.fastParams.batch +
'&origin=' + this.fastParams.origin
});
},
/**
* 选择图片
*/
chooseImageChange() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment