Commit 873b20e9 by LJM

异常理货

parent c6d5b1ec
.tally {
padding-top: 100rpx;
padding-bottom: 50rpx;
.fix {
position: fixed;
top: 0;
......@@ -118,10 +119,82 @@
font-size: 26rpx;
color: #197adb;
}
.words-text-dis{
.words-text-dis {
font-size: 26rpx;
color: #404547;
}
}
}
.await_response {
padding: 0 24rpx;
.box {
margin-bottom: 16rpx;
padding: 24rpx 24rpx 24rpx 16rpx;
height: 174rpx;
background: #ffffff;
border-radius: 4rpx;
.left {
width: 91rpx;
padding: 0 24rpx;
height: 126rpx;
background: #197adb;
border-radius: 4rpx;
font-size: 22rpx;
color: #ffffff;
}
.right {
width: calc(100% - 120rpx);
.p1 {
margin-bottom: 18rpx;
.t1 {
font-size: 28rpx;
color: #1e2021;
font-weight: bold;
}
.t2 {
font-size: 26rpx;
color: #197adb;
}
.t3 {
width: 48rpx;
height: 36rpx;
border-radius: 4rpx;
border: 1rpx solid #197adb;
font-size: 24rpx;
color: #197adb;
margin-left: 16rpx;
}
}
.p2 {
margin-bottom: 8rpx;
.t1 {
font-size: 22rpx;
color: #6e767a;
margin-right: 16rpx;
}
.t2 {
font-size: 22rpx;
color: #404547;
}
}
.p3 {
.t1 {
color: #6e767a;
font-size: 22rpx;
margin-right: 16rpx;
}
.t2 {
color: #404547;
font-size: 22rpx;
}
}
}
&.curr {
.left {
background: #cad9e0;
color: #404547;
}
}
}
}
}
......@@ -23,8 +23,8 @@
}
}
.pp {
margin-bottom: 20rpx;
&:last-child{
margin-bottom: 20rpx;
&:last-child {
margin-bottom: 0;
}
&.mb24 {
......@@ -136,14 +136,14 @@
border-right: none;
}
}
.tc{
.tc {
justify-content: center;
padding-left: 0;
}
}
.uni-tr {
height: 62rpx;
border-bottom: 1px solid #cad9e0;
border-bottom: 1px solid #cad9e0;
.txt {
font-size: 22rpx;
color: #404547;
......@@ -157,57 +157,57 @@
border-right: none;
}
}
.tc{
.tc {
justify-content: center;
padding-left: 0;
}
}
}
.show-pic{
.show-pic {
padding-top: 24rpx;
padding-bottom: 47rpx;
border-bottom: 1px solid #E6EDF0;
.pic-title{
font-size: 24rpx;
color: #6E767A;
margin-bottom: 23rpx;
}
.list{
flex-wrap: wrap;
.box{
width: 145rpx;
height: 145rpx;
margin-right: 24rpx;
&:nth-of-type(4n){
margin-right: 0;
}
image{
width: 145rpx;
height: 145rpx;
}
}
}
border-bottom: 1px solid #e6edf0;
.pic-title {
font-size: 24rpx;
color: #6e767a;
margin-bottom: 23rpx;
}
.list {
flex-wrap: wrap;
.box {
width: 145rpx;
height: 145rpx;
margin-right: 24rpx;
&:nth-of-type(4n) {
margin-right: 0;
}
image {
width: 145rpx;
height: 145rpx;
}
}
}
}
.text-box{
.text-box {
padding-top: 24rpx;
.tt-box{
.tt-box {
margin-bottom: 20rpx;
&:last-child{
&:last-child {
margin-bottom: 0;
}
.label{
.label {
width: 120rpx;
font-size: 24rpx;
color: #6E767A;
color: #6e767a;
white-space: nowrap;
}
.t1{
.t1 {
font-size: 24rpx;
color: #404547;
}
.t2{
.t2 {
font-size: 24rpx;
color: #BB3434;
color: #bb3434;
}
}
}
......@@ -219,5 +219,9 @@
border-radius: 4rpx;
font-size: 28rpx;
color: #ffffff;
&.disabled {
background: #9ca8ad;
border-radius: 4rpx;
}
}
}
......@@ -4,7 +4,7 @@
<view class="search-box">
<view class="search-input row bothSide verCenter">
<text class="iconfont icon-a-riqi11"></text>
<input type="text" @input="inputChange()" placeholder="请输入入仓号" class="uni-input" v-model="number" placeholder-style="color:#6e767a" />
<input type="text" @input="inputChange()" placeholder="请输入入仓号" class="uni-input" v-model="searchParams.erp_order_sn" placeholder-style="color:#6e767a" />
<text class="scan iconfont icon-juxing6" @click="scanChange()"></text>
</view>
</view>
......@@ -15,72 +15,51 @@
<text class="t2" v-if="index == currentIndex">({{ total }})</text>
</view>
</view>
<template v-if="currentIndex == 0">
<view class="list" v-if="goodsArrangeData.length > 0 || !is_complete">
<navigator class="box row bothSide verCenter" :url="'/pages/goods/tallyDetail?number=' + item.number" hover-class="none" v-for="(item, index) in goodsArrangeData" :key="index">
<view class="bill-number row rowCenter verCenter" :class="numberType[index] ? 'color1' : 'color2'">{{ item.number }}</view>
<view>
<text class="t1">客户:{{ item.customer }}</text>
<view class="text">
<text class="p1">下单:</text>
<text class="p2 mr49">{{ item.orderDate }}</text>
<text class="p1">登记数量:</text>
<text class="p2">{{ item.num }}</text>
</view>
<view class="text">
<text class="p1">备注:</text>
<text class="p2">{{ item.remark }}</text>
<view class="await_response">
<navigator class="box row bothSide verCenter" :url="'/pages/goods/tallyExectionDetail?erp_order_sn=' + item.erp_order_sn" v-for="(item, index) in list" :key="index" v-if="list.length > 0" :class="{ curr: item.store_execute_status == 2 }">
<view class="left row rowCenter verCenter">{{ item.ask_customer_exception_id_cn }}</view>
<view class="right">
<view class="p1 row bothSide verCenter">
<view class="row verCenter">
<text class="t1">{{ item.company_name || '--' }}</text>
<text class="t3 row rowCenter verCenter" v-if="item.is_goods_check == 1"></text>
</view>
<text class="t2">{{ item.erp_order_sn }}</text>
</view>
<template v-if="item.isInspOrg">
<text class="words-text">商检</text>
</template>
<template v-else>
<text class="words-text-dis">非商检</text>
</template>
</navigator>
</view>
<template v-else>
<view class="no-data column verCenter rowCenter">
<text class="iconfont icon-jinggao2"></text>
<text class="text">查找不到相关信息</text>
<text class="p">1、请输入正确的入仓号</text>
</view>
</template>
</template>
<template v-else-if="currentIndex == 1">
<view class="list" v-if="unusualCheckInList.length > 0 || !is_complete">
<navigator class="box row bothSide verCenter" :url="'/pages/goods/tallyExectionDetail?number=' + item.erp_order_sn" hover-class="none" v-for="(item, index) in unusualCheckInList" :key="index">
<view class="bill-number row rowCenter verCenter" :class="numberTypeUnusua[index] ? 'color1' : 'color2'">{{ item.erp_order_sn }}</view>
<view>
<text class="t1">客户:{{ item.supplier_name }}</text>
<view class="text">
<text class="p1">时间:</text>
<text class="p2 mr49">{{ item.create_time_cn }}</text>
<text class="p1">问客:</text>
<text class="p2">{{ item.ask_customer_status_cn }}</text>
</view>
<view class="text">
<text class="p1">备注:</text>
<text class="p2">{{ item.sort_goods_remark }}</text>
<view class="p2 row verCenter">
<text class="t1">仓库备注:</text>
<text class="t2">{{ item.ask_customer_exception_id_cn }}</text>
</view>
<view class="p3 row bothSide verCenter">
<view class="row verCenter">
<text class="t1">提交时间:</text>
<text class="t2">{{ item.create_time_cn }}</text>
</view>
<template v-if="currentIndex == 0">
<view class="row verCenter">
<text class="t1">商务:</text>
<text class="t2">{{ item.bussiness_name }}</text>
</view>
</template>
<template v-else-if="currentIndex == 1">
<view class="row verCenter" v-if="item.store_execute_status == 1">
<text class="t1">执行:</text>
<text class="t2">{{ item.store_execute_status_cn }}</text>
</view>
<view class="row verCenter" v-else-if="item.store_execute_status == 2">
<text class="t1">执行:</text>
<text class="t2">{{ item.store_execute_name }}</text>
</view>
</template>
</view>
<template v-if="item.is_goods_check === 1">
<text class="words-text">商检</text>
</template>
<template v-else>
<text class="words-text-dis">非商检</text>
</template>
</navigator>
</view>
<template v-else>
<view class="no-data column verCenter rowCenter">
<text class="iconfont icon-jinggao2"></text>
<text class="text">查找不到相关信息</text>
<text class="p">1、请输入正确的入仓号</text>
</view>
</template>
</template>
</navigator>
<view class="no-data column verCenter rowCenter" v-else>
<text class="iconfont icon-jinggao2"></text>
<text class="text">查找不到相关信息</text>
<text class="p">1、请输入正确的入仓号</text>
</view>
</view>
</view>
</template>
......@@ -91,15 +70,15 @@ export default {
data() {
return {
currentIndex: 0,
is_complete: false,
textArr: ['等待回复', '商务已回复'],
number: '',
total: 0,
page: 1,
goodsArrangeData: [],
unusualCheckInList: [],
numberType: [],
numberTypeUnusua: []
list: [],
searchParams: {
page: 1,
limit: 100,
erp_order_sn: '', //入仓号
ask_customer_status: 1 //等待回复 商务已回复
}
};
},
onLoad(options) {
......@@ -108,74 +87,35 @@ export default {
}
},
onShow() {
if (this.currentIndex == 0) {
this.getData();
} else if (this.currentIndex == 1) {
this.getUnusualSortGoodsList();
}
this.getData();
},
methods: {
changeTab(index) {
this.currentIndex = index;
if (index === 0) {
this.getData();
} else if (index === 1) {
this.getUnusualSortGoodsList();
if (index == 0) {
this.searchParams.ask_customer_status = 1;
} else if (index == 1) {
this.searchParams.ask_customer_status = 2;
}
this.getData();
},
inputChange() {
if (this.currentIndex === 0) {
// 清除之前的定时器
clearTimeout(this.timer);
this.timer = setTimeout(() => {
this.list = [];
this.getData();
} else if (this.currentIndex === 1) {
this.getUnusualSortGoodsList();
}
}, 800);
},
getData() {
this.request(API.getGoodsArrangeData, 'POST', { page: this.page, number: this.number }, true).then(res => {
this.request(API.askCustomerProblemList, 'GET', { page: this.searchParams.page, limit: this.searchParams.limit, ask_customer_status: this.searchParams.ask_customer_status }, true).then(res => {
if (res.err_code === 0) {
this.is_complete = true;
this.goodsArrangeData = res.data;
this.total = res.data.length;
//判断A单 B单
if (res.data.length > 0) {
for (let i = 0; i < res.data.length; i++) {
if (res.data[i].number.indexOf('B')) {
this.numberType.push(true);
} else {
this.numberType.push(false);
}
}
}
} else {
uni.showToast({
title: res.err_msg,
icon: 'error'
});
}
});
},
getUnusualSortGoodsList() {
this.request(API.getUnusualSortGoodsList, 'POST', { page: this.page, number: this.number }, true).then(res => {
if (res.err_code === 0) {
this.is_complete = true;
this.unusualCheckInList = res.data;
this.total = res.data.length;
//判断A单 B单
if (res.data.length > 0) {
for (let i = 0; i < res.data.length; i++) {
if (res.data[i].erp_order_sn.indexOf('B')) {
this.numberTypeUnusua.push(true);
} else {
this.numberTypeUnusua.push(false);
}
}
}
this.list = res.data.data;
this.total = res.data.total;
} else {
uni.showToast({
title: res.err_msg,
icon: 'error'
icon: 'none'
});
}
});
......@@ -185,19 +125,15 @@ export default {
success: function(res) {
console.log(res);
if (res.errMsg == 'scanCode:ok') {
this.number = res.result;
if (this.currentIndex === 0) {
this.getData();
} else if (this.currentIndex === 1) {
this.getUnusualSortGoodsList();
}
this.searchParams.erp_order_sn = res.result;
this.getData();
}
},
fail: function(res) {
console.log(res);
uni.showToast({
title: '扫码失败',
icon: 'error'
icon: 'none'
});
}
});
......
......@@ -10,22 +10,22 @@
<view class="pp row verCenter">
<text class="t1">入仓号:</text>
<text class="t2" style="width: auto;">{{ customerDetail.base.erp_order_sn }}</text>
<text class="type row rowCenter verCenter">商检</text>
<text class="type row rowCenter verCenter" v-if="customerDetail.base.is_goods_check">商检</text>
</view>
<view class="pp row verCenter">
<text class="t1">订单时间</text>
<text class="t2">{{ customerDetail.base.order_time_cn }}</text>
<text class="t1">跟单商务</text>
<text class="t2">{{ customerDetail.base.create_user_name }}</text>
</view>
<view class="pp row verCenter">
<text class="t1">订单客户:</text>
<text class="t2">{{ customerDetail.base.company_name }}</text>
</view>
<view class="pp row verCenter">
<text class="t1">问客时间:</text>
<text class="t2">{{ customerDetail.base.ask_time_cn }}</text>
<text class="t1">发起时间:</text>
<text class="t2">{{ customerDetail.base.create_time }}</text>
</view>
</view>
<view class="question-box" v-for="(item, index) in customerDetail.detail">
<view class="question-box" v-for="(item, index) in customerDetail.detail" :key="index">
<view class="top row bothSide verCenter">
<view class="title row verCenter">
<text class="arrow row rowCenter verCenter"></text>
......@@ -39,21 +39,21 @@
<view class="status-box row verCenter bothSide">
<view class="bb row verCenter">
<text class="t1">客户状态:</text>
<text class="t2">{{item.ask_customer_status_cn}}</text>
<text class="t2">{{ item.ask_customer_status_cn }}</text>
</view>
<view class="bb row verCenter">
<text class="t1">商务状态:</text>
<text class="t2">{{item.ask_customer_sw_status_cn}}</text>
<text class="t2">{{ item.ask_customer_sw_status_cn }}</text>
</view>
</view>
<view class="uni-table">
<view class="uni-th row">
<text class="row verCenter tc">序号</text>
<text class="row verCenter">规格型号</text>
<text class="row verCenter">订单{{item.ask_customer_exception_id_cn.substr(0, 2)}}</text>
<text class="row verCenter">实到{{item.ask_customer_exception_id_cn.substr(0, 2)}}</text>
<text class="row verCenter">订单{{ item.ask_customer_exception_id_cn.substr(0, 2) }}</text>
<text class="row verCenter">实到{{ item.ask_customer_exception_id_cn.substr(0, 2) }}</text>
</view>
<view class="uni-tr row verCenter" v-for="(v, i) in item.goods_info">
<view class="uni-tr row verCenter" v-for="(v, i) in item.goods_info" :key="i">
<text class="txt w row verCenter tc">{{ i + 1 }}</text>
<text class="txt w row verCenter">{{ v.goods_type }}</text>
<text class="txt w row verCenter">{{ v.order_result }}</text>
......@@ -63,7 +63,7 @@
<view class="show-pic">
<view class="pic-title">问题图片</view>
<view class="list row verCenter">
<view class="box" @click="previewChange(item.upload_img.split(','), i)" v-for="(v, i) in item.upload_img.split(',')" :key="index"><image :src="v" mode="aspectFill"></image></view>
<view class="box" @click="previewChange(item.upload_img.split(','), i)" v-for="(v, i) in item.upload_img.split(',')" :key="i"><image :src="v" mode="aspectFill"></image></view>
</view>
</view>
<view class="text-box">
......@@ -77,7 +77,8 @@
</view>
</view>
</view>
<navigator class="btn row rowCenter verCenter" :url="'/pages/goods/tallyDetail?number=' + customerDetail.base.erp_order_sn">重新发起理货</navigator>
<view class="btn row rowCenter verCenter" @click="changeWatch(customerDetail.base.ask_customer_id)" v-if="customerDetail.base.is_watch == 0">核对并执行</view>
<view class="btn row rowCenter verCenter disabled" v-if="customerDetail.base.is_watch == 1">已核对</view>
</view>
</template>
......@@ -93,7 +94,7 @@ export default {
};
},
onLoad(options) {
this.number = options.number;
this.number = options.erp_order_sn;
},
onShow() {
if (this.noexebshowFalg) {
......@@ -119,6 +120,25 @@ export default {
});
}
});
},
changeWatch(ask_customer_id) {
this.request(API.changeWatch, 'GET', { ask_customer_id: ask_customer_id }, true).then(res => {
if (res.err_code === 0) {
uni.showToast({
title: '操作成功',
icon: 'none'
});
setTimeout(() => {
this.getData();
}, 2000);
} else {
uni.showModal({
title: '提示',
content: res.err_msg,
showCancel: false
});
}
});
}
}
};
......
......@@ -80,7 +80,7 @@ export default {
tips: ''
},
{
name: '理货作业',
name: '异常理货',
iconfont: 'icon-a-10cangkucangchu',
tips: ''
},
......@@ -125,11 +125,6 @@ export default {
tips: ''
},
{
name: '扫描盘点',
iconfont: 'icon-chakanbeizhu',
tips: ''
},
{
name: '理货确认',
iconfont: 'icon-chakanbeizhu',
tips: ''
......@@ -202,7 +197,7 @@ export default {
uni.navigateTo({
url: '/pages/goods/addReceiving'
});
} else if (item.name == '理货作业') {
} else if (item.name == '异常理货') {
uni.navigateTo({
url: '/pages/goods/tally'
});
......
......@@ -192,7 +192,19 @@ const API = {
/**
* 提交理货
*/
submitTallyGoods: API_BASE + '/supplywechatwms/submitTallyGoods'
submitTallyGoods: API_BASE + '/supplywechatwms/submitTallyGoods',
/**
* 等待回复
*/
askCustomerProblemList: API_BASE + '/supplywechatwms/askCustomerProblemList',
/**
* 详情
*/
askCustomerProblemDetail: API_BASE + '/supplywechatwms/askCustomerProblemDetail',
/**
* 修改是否查看
*/
changeWatch: API_BASE + '/supplywechatwms/changeWatch'
}
......
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