You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
693 lines
24 KiB
693 lines
24 KiB
|
2 months ago
|
<template>
|
||
|
|
<view>
|
||
|
|
<cmd-nav-bar :title="shopName" background-color="#fff"></cmd-nav-bar>
|
||
|
|
<view class="search" style="position: fixed;top: 180rpx;z-index: 99;">
|
||
|
|
<uni-datetime-picker style="margin-bottom:20rpx;" v-model="range" @change="searchList" type="daterange" />
|
||
|
|
<view style="display: flex;">
|
||
|
|
<view style="width: 80%;" :style="{'width':listStatus!= 6?'80%':'100%'}">
|
||
|
|
<uni-search-bar class="uni-mt-10" radius="5" placeholder="输入客户名称/销售人员/单号搜索" cancelButton="none"
|
||
|
|
@confirm="searchList" />
|
||
|
|
</view>
|
||
|
|
<view style="width: 20%;" v-if="listStatus !=6">
|
||
|
|
<view style="width: 80%;height: 70rpx;background: #5fd9ee;text-align: center;line-height: 70rpx;border-radius: 10px;margin: 20rpx;color: #fff;" @tap="changeSort('paixu')">
|
||
|
|
查看
|
||
|
|
<uni-icons type="down" color="#fff" size="11" v-if="noDaysort == false"></uni-icons>
|
||
|
|
<uni-icons type="up" color="#fff" size="11" v-if="noDaysort"></uni-icons>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="nahuo-mask" v-if="noDaysort">
|
||
|
|
<view style="width: 100%;margin: 0 auto;background: #fff;height: 200rpx;border: 1px solid #eee;border-bottom-left-radius: 10px;border-bottom-right-radius: 10px;">
|
||
|
|
<view @tap="getCancelOrder()" class="paixu-content" style="border-bottom: 1px solid #eee;">
|
||
|
|
查看全部订单
|
||
|
|
</view>
|
||
|
|
<view @tap="getCancelOrder('2')" class="paixu-content">
|
||
|
|
查看已作废状态的订单
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
</view>
|
||
|
|
<view class="u-transition" style="display:flex;background: #ecf5ff;width: 100%;color: #5fd9ee;height: 80rpx;line-height: 80rpx;padding-left: 20rpx;">
|
||
|
|
<view>点击列表可跳转至销售单</view>
|
||
|
|
<!-- <view @tap.stop="printCodeBtn" class="dayin-text" v-if="btnStatus">打印商品码</view>
|
||
|
|
<view @tap.stop="printCodeBtn" class="dayin-text" v-else>取消操作</view> -->
|
||
|
|
</view>
|
||
|
|
<view class="ulList" v-if="inventoryList.length > 0" style="overflow: scroll;margin-top:480rpx;">
|
||
|
|
<ul :style="{'margin-bottom':btnStatus==false?'160rpx':''}">
|
||
|
|
<li v-for="(item,index) in inventoryList" :key="index">
|
||
|
|
<checkbox-group @change="checkboxChange">
|
||
|
|
<label class="uni-list-cell uni-list-cell-pd" >
|
||
|
|
<checkbox v-if="btnStatus==false" :value="item" style="float: left;width: 60rpx;line-height: 300rpx;margin: 0 20rpx;" />
|
||
|
|
<view :style="{width:btnStatus==false?'95%':'100%'}" @tap="gotoDetail(item.id,item.userId)">
|
||
|
|
<uni-card :title="item.userName == null ?'暂无':((shopId == '1810179818189361152' || shopId == '1863043415453863936') && item.userName == '散客')?'客户':item.userName" :sub-title="item.createTime == null ?'暂无':item.createTime" :extra="'数量:'+(item.productCount == null ?'暂无':item.productCount)">
|
||
|
|
<view class="uni-body" style="font-weight: bold;font-size: 30rpx;">
|
||
|
|
<text class="cardText" style="font-size: 30rpx;">单号:</text>
|
||
|
|
{{item.id}}
|
||
|
|
</view>
|
||
|
|
<view class="uni-body"><text class="cardText">销售员:</text> {{item.createByName == null ?'暂无':item.createByName}}</view>
|
||
|
|
<view class="uni-body">
|
||
|
|
<text class="cardText">销售金额:</text>
|
||
|
|
<text class="priceText">{{item.totalAmount == null ?'暂无':item.totalAmount}}</text>
|
||
|
|
<text decode class="cardText">{{' 欠款: '}}</text>
|
||
|
|
<text class="priceText" style="color:red;">{{item.noEarn == null ?'暂无':item.noEarn}}</text>
|
||
|
|
</view>
|
||
|
|
<view class="uni-body" v-if="item.returnSaleProductCount > 0">
|
||
|
|
<text class="cardText">退货金额:</text>
|
||
|
|
<text class="priceText">{{item.returnSaleTotalAmount == null ?'暂无':item.returnSaleTotalAmount}}</text>
|
||
|
|
<text decode class="cardText">{{' 退货数: '}}</text>
|
||
|
|
<text class="priceText">{{item.returnSaleProductCount == null ?'暂无':item.returnSaleProductCount}}</text>
|
||
|
|
</view>
|
||
|
|
<view class="uni-body"> <text class="cardText">
|
||
|
|
订单状态:</text>{{item.status == '0' ?'待抢单' :item.status == '2' ?'作废' :item.status == '1' ?'待取货' :item.status == '3' ?'待送达' :item.status == '4' ?'已完成' :item.status == '5' ?'下游客户待退货' :item.status == '00' ?'退货待抢单' :item.status == '01' ?'退货待取货' :item.status == '03' ?'退货待送达' :item.status == '04' ?'待确认退货' :item.status == '6' ?'待配货':item.status == '8' ?'待物流上门':item.status == '9' ?'已完成' :'挂单'}}
|
||
|
|
</view>
|
||
|
|
<view class="floatRight" v-if="item.status == 6" @tap.stop="goSaleGoods(item,'')">去开单</view>
|
||
|
|
<view class="floatRight" v-if="item.status == 4" @tap.stop="cancelOrder(item,'',index)">撤销</view>
|
||
|
|
<view class="floatRight" v-if="item.status == 4" @tap.stop="cancelOrder(item,'goPay')">撤销并复制</view>
|
||
|
|
<view class="floatRight" v-if="item.status == 4" @tap.stop="copyOrder(item,'')">复制</view>
|
||
|
|
<view class="floatRight" v-if="item.status == 2" @tap.stop="againOrder(item)">重新开单</view>
|
||
|
|
<view class="floatRight" style="color: red;width: 150rpx;" @tap.stop="delItemModal(item)" v-if="item.status == 6">删除订单</view>
|
||
|
|
</uni-card>
|
||
|
|
</view>
|
||
|
|
</label>
|
||
|
|
</checkbox-group>
|
||
|
|
</li>
|
||
|
|
<u-loadmore :status="status" />
|
||
|
|
</ul>
|
||
|
|
|
||
|
|
</view>
|
||
|
|
<u-empty v-else mode="order" margin-top="480"></u-empty>
|
||
|
|
</view>
|
||
|
|
</template>
|
||
|
|
|
||
|
|
<script>
|
||
|
|
export default {
|
||
|
|
data() {
|
||
|
|
return {
|
||
|
|
searchStr: '',
|
||
|
|
type: '',
|
||
|
|
inventoryList: [],
|
||
|
|
status: 'loadmore',
|
||
|
|
page: 1,
|
||
|
|
shopName:uni.getStorageSync('shopName'),
|
||
|
|
returnList:new Map(),
|
||
|
|
noDaysort:false,
|
||
|
|
cancel:false,
|
||
|
|
totalPages: 0,
|
||
|
|
isCancel:false,
|
||
|
|
listStatus:'',
|
||
|
|
// type:'',
|
||
|
|
range:[],
|
||
|
|
btnStatus:true,
|
||
|
|
shopId:uni.getStorageSync('shopId'),
|
||
|
|
pageType:''
|
||
|
|
};
|
||
|
|
},
|
||
|
|
onLoad(options) {
|
||
|
|
this.type = options.type;
|
||
|
|
this.listStatus = options.listStatus
|
||
|
|
this.pageType = options.pageType
|
||
|
|
},
|
||
|
|
onShow(){
|
||
|
|
|
||
|
|
if(uni.getStorageSync('noReload') == true){
|
||
|
|
uni.removeStorageSync('noReload')
|
||
|
|
}else{
|
||
|
|
this.list = []
|
||
|
|
this.page = 1
|
||
|
|
this.getOrderInfoList()
|
||
|
|
}
|
||
|
|
},
|
||
|
|
onReachBottom() {
|
||
|
|
if (this.page >= this.totalPages) return;
|
||
|
|
this.status = 'loading';
|
||
|
|
this.page = ++this.page;
|
||
|
|
if(this.cancel == true){
|
||
|
|
this.getOrderInfoList("2");
|
||
|
|
}else{
|
||
|
|
this.getOrderInfoList();
|
||
|
|
}
|
||
|
|
|
||
|
|
},
|
||
|
|
methods: {
|
||
|
|
gotoDetail(id,userId) {
|
||
|
|
uni.setStorageSync('noReload',true)
|
||
|
|
uni.navigateTo({
|
||
|
|
url: '/package1/index/orderDetail?id=' + id +'&userId='+userId
|
||
|
|
})
|
||
|
|
|
||
|
|
},
|
||
|
|
searchList(res) {
|
||
|
|
this.searchStr = res.value
|
||
|
|
this.page = 1;
|
||
|
|
this.inventoryList = [];
|
||
|
|
if(this.cancel == true){
|
||
|
|
this.getOrderInfoList("2");
|
||
|
|
}else{
|
||
|
|
this.getOrderInfoList();
|
||
|
|
}
|
||
|
|
},
|
||
|
|
// 订单查询
|
||
|
|
getOrderInfoList(type) {
|
||
|
|
this.status = 'loading';
|
||
|
|
this.tui.request("/app/sale/listPages", "POST", {
|
||
|
|
pageVo: {
|
||
|
|
pageSize: 10,
|
||
|
|
pageNumber: this.page
|
||
|
|
},
|
||
|
|
fromWhere:type == '2' || this.listStatus==6?2:0,
|
||
|
|
startTime:this.range[0],
|
||
|
|
endTime:this.range[1],
|
||
|
|
searchStr:this.searchStr,
|
||
|
|
status:type == '2'?2:this.listStatus,
|
||
|
|
shopId:uni.getStorageSync('shopId')
|
||
|
|
}, false, false).then((res) => {
|
||
|
|
this.status = 'nomore';
|
||
|
|
if (res.code == 200) {
|
||
|
|
if (this.page == 1) {
|
||
|
|
this.inventoryList = res.result.records
|
||
|
|
} else {
|
||
|
|
this.inventoryList = [...this.inventoryList, ...res.result.records]
|
||
|
|
}
|
||
|
|
// this.searchName = ""
|
||
|
|
this.noDaysort = false
|
||
|
|
this.totalPages = res.result.pages
|
||
|
|
} else {
|
||
|
|
this.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
}).catch((res) => {})
|
||
|
|
},
|
||
|
|
changeSort(type){
|
||
|
|
this.nahuoDay = false
|
||
|
|
this.noDaysort = !this.noDaysort
|
||
|
|
|
||
|
|
},
|
||
|
|
paixuChange(text){
|
||
|
|
this.sort = text
|
||
|
|
this.popleList = []
|
||
|
|
this.pages = 1
|
||
|
|
this.searchName = ""
|
||
|
|
this.noDaysort = false
|
||
|
|
this.khOrGysList()
|
||
|
|
},
|
||
|
|
sliceMsg(val) {
|
||
|
|
var name = ''
|
||
|
|
if (typeof(val) == 'string') {
|
||
|
|
let newObj = JSON.parse(val)
|
||
|
|
for (let as in newObj) {
|
||
|
|
name += newObj[as] + '/'
|
||
|
|
}
|
||
|
|
}
|
||
|
|
return name;
|
||
|
|
},
|
||
|
|
//退款接口
|
||
|
|
async getReturnOrder(id) {
|
||
|
|
let that = this;
|
||
|
|
await this.tui.request("/app/return/list", "post", {
|
||
|
|
remark: 3,
|
||
|
|
saleId: id
|
||
|
|
}, false, false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
if (res.result != '') {
|
||
|
|
res.result.forEach(item => {
|
||
|
|
this.tui.request("/app/return/get/" + item.id, "GET", null, false,false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
for(let i=0;i<res.result.saleDetailDTOList.length;i++){
|
||
|
|
res.result.saleDetailDTOList[i].returnPrice = res.result.saleDetailDTOList[i].discountAmount
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList = new Map()
|
||
|
|
that.returnList.set(res.result.saleDetailDTOList[i].productId,res.result.saleDetailDTOList[i])
|
||
|
|
for(let m=0;m<res.result.saleDetailDTOList[i].stockLogList1.length;m++){
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList1[m].productCount = 0-res.result.saleDetailDTOList[i].stockLogList1[m].productCount
|
||
|
|
that.returnList.get(res.result.saleDetailDTOList[i].productId).stockLogList.set(res.result.saleDetailDTOList[i].stockLogList1[m].attributeList,res.result.saleDetailDTOList[i].stockLogList1[m])
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}).catch((res) => {})
|
||
|
|
})
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
this.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
// 重新开单订单
|
||
|
|
async againOrder(item1,type,index) {
|
||
|
|
let that = this;
|
||
|
|
await this.tui.request("/app/return/list", "post", {
|
||
|
|
remark: 3,
|
||
|
|
saleId: item1.id
|
||
|
|
}, false, false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
if (res.result != '') {
|
||
|
|
res.result.forEach(item => {
|
||
|
|
this.tui.request("/app/return/get/" + item.id, "GET", null, false,false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
for(let i=0;i<res.result.saleDetailDTOList.length;i++){
|
||
|
|
res.result.saleDetailDTOList[i].returnPrice = res.result.saleDetailDTOList[i].discountAmount
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList = new Map()
|
||
|
|
that.returnList.set(res.result.saleDetailDTOList[i].productId,res.result.saleDetailDTOList[i])
|
||
|
|
for(let m=0;m<res.result.saleDetailDTOList[i].stockLogList1.length;m++){
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList1[m].productCount = 0-res.result.saleDetailDTOList[i].stockLogList1[m].productCount
|
||
|
|
that.returnList.get(res.result.saleDetailDTOList[i].productId).stockLogList.set(res.result.saleDetailDTOList[i].stockLogList1[m].attributeList,res.result.saleDetailDTOList[i].stockLogList1[m])
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要重新开单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
that.goSaleGoods(item1)
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}).catch((res) => {})
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要重新开单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
that.goSaleGoods(item1)
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
this.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
// 取消订单
|
||
|
|
async cancelOrder(item1,type,index) {
|
||
|
|
let that = this;
|
||
|
|
await this.tui.request("/app/return/list", "post", {
|
||
|
|
remark: 3,
|
||
|
|
saleId: item1.id
|
||
|
|
}, false, false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
if (res.result != '') {
|
||
|
|
res.result.forEach(item => {
|
||
|
|
this.tui.request("/app/return/get/" + item.id, "GET", null, false,false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
for(let i=0;i<res.result.saleDetailDTOList.length;i++){
|
||
|
|
res.result.saleDetailDTOList[i].returnPrice = res.result.saleDetailDTOList[i].discountAmount
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList = new Map()
|
||
|
|
that.returnList.set(res.result.saleDetailDTOList[i].productId,res.result.saleDetailDTOList[i])
|
||
|
|
for(let m=0;m<res.result.saleDetailDTOList[i].stockLogList1.length;m++){
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList1[m].productCount = 0-res.result.saleDetailDTOList[i].stockLogList1[m].productCount
|
||
|
|
that.returnList.get(res.result.saleDetailDTOList[i].productId).stockLogList.set(res.result.saleDetailDTOList[i].stockLogList1[m].attributeList,res.result.saleDetailDTOList[i].stockLogList1[m])
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要撤销订单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
that.cancelOk(item1,type,index)
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}).catch((res) => {})
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要撤销订单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
that.cancelOk(item1,type,index)
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
this.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
async copyOrder(item1){
|
||
|
|
let that = this;
|
||
|
|
await this.tui.request("/app/return/list", "post", {
|
||
|
|
remark: 3,
|
||
|
|
saleId: item1.id
|
||
|
|
}, false, false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
if (res.result != '') {
|
||
|
|
res.result.forEach(item => {
|
||
|
|
this.tui.request("/app/return/get/" + item.id, "GET", null, false,false).then((res) => {
|
||
|
|
if (res.code == 200 && res.result != null && res.result != undefined) {
|
||
|
|
for(let i=0;i<res.result.saleDetailDTOList.length;i++){
|
||
|
|
res.result.saleDetailDTOList[i].returnPrice = res.result.saleDetailDTOList[i].discountAmount
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList = new Map()
|
||
|
|
that.returnList.set(res.result.saleDetailDTOList[i].productId,res.result.saleDetailDTOList[i])
|
||
|
|
for(let m=0;m<res.result.saleDetailDTOList[i].stockLogList1.length;m++){
|
||
|
|
res.result.saleDetailDTOList[i].stockLogList1[m].productCount = 0-res.result.saleDetailDTOList[i].stockLogList1[m].productCount
|
||
|
|
that.returnList.get(res.result.saleDetailDTOList[i].productId).stockLogList.set(res.result.saleDetailDTOList[i].stockLogList1[m].attributeList,res.result.saleDetailDTOList[i].stockLogList1[m])
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要复制订单并重新开单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
this.goSaleGoods(item1,'copy')
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}).catch((res) => {})
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
this.$nextTick(() => {
|
||
|
|
this.tui.modal("提示", "您确定要复制订单并重新开单吗?", true, (res) => {
|
||
|
|
if (res) {
|
||
|
|
this.goSaleGoods(item1,'copy')
|
||
|
|
}else{
|
||
|
|
that.returnList = new Map()
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
this.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
})
|
||
|
|
},
|
||
|
|
getCancelOrder(type){
|
||
|
|
this.page =1
|
||
|
|
this.inventoryList = []
|
||
|
|
if(type == "2"){
|
||
|
|
this.cancel = true
|
||
|
|
}else{
|
||
|
|
this.cancel = false
|
||
|
|
}
|
||
|
|
this.getOrderInfoList(type)
|
||
|
|
},
|
||
|
|
// 取消订单
|
||
|
|
cancelOk(item,type,index) {
|
||
|
|
let that = this;
|
||
|
|
that.tui.request('/app/sale/cancelSale', "POST", {
|
||
|
|
id:item.id
|
||
|
|
}, true, true).then((res1) => {
|
||
|
|
if (res1.code == 200) {
|
||
|
|
if (type == 'goPay') {
|
||
|
|
this.isCancel = true
|
||
|
|
that.goSaleGoods(item,'cancel')
|
||
|
|
} else {
|
||
|
|
that.inventoryList[index].status = 2
|
||
|
|
that.$forceUpdate()
|
||
|
|
// that.getOrderInfoList()
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
that.tui.toast(res.message)
|
||
|
|
}
|
||
|
|
}).catch((res1) => {})
|
||
|
|
},
|
||
|
|
backPage(){
|
||
|
|
if(this.pageType == 'tab'){
|
||
|
|
uni.switchTab({
|
||
|
|
url: '/pages/index/index'
|
||
|
|
});
|
||
|
|
}else{
|
||
|
|
uni.navigateBack()
|
||
|
|
}
|
||
|
|
},
|
||
|
|
getUnitPrice(item,items){
|
||
|
|
if(item.discount != 10){
|
||
|
|
if(item.discount == null || item.discount == 0 || item.discount ==undefined){
|
||
|
|
return items.discountAmount
|
||
|
|
}else{
|
||
|
|
return ((items.discountAmount * 10000) / (item.discount * 100) / 10).toFixed(2)
|
||
|
|
}
|
||
|
|
}else if(items.discount!= 10){
|
||
|
|
if(items.discount == null || items.discount == 0 || items.discount ==undefined){
|
||
|
|
return items.discountAmount
|
||
|
|
}else{
|
||
|
|
return ((items.discountAmount * 10000) / (items.discount * 100) / 10).toFixed(2)
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
return items.discountAmount || items.wholesalePrice
|
||
|
|
}
|
||
|
|
},
|
||
|
|
//带参数跳转到开单页
|
||
|
|
goSaleGoods(item,type) {
|
||
|
|
let dataList = []
|
||
|
|
if(!item.saleDetailDTOList){
|
||
|
|
item.saleDetailDTOList = []
|
||
|
|
}
|
||
|
|
this.returnList.forEach(function(value, key) {
|
||
|
|
item.saleDetailDTOList.push(value)
|
||
|
|
})
|
||
|
|
item.discount = item.discount==null?10:item.discount
|
||
|
|
if (item.saleDetailDTOList) {
|
||
|
|
for (let i = 0; i < item.saleDetailDTOList.length; i++) {
|
||
|
|
|
||
|
|
let obj = {}
|
||
|
|
let attrMap = new Map()
|
||
|
|
let newSaleDetailDTOList = []
|
||
|
|
let num = 0
|
||
|
|
|
||
|
|
for (let m = 0; m < item.saleDetailDTOList[i].stockLogList1.length; m++) {
|
||
|
|
if (attrMap.has(item.saleDetailDTOList[i].stockLogList1[m].attributeList) == true) {
|
||
|
|
let hasCount = attrMap.get(item.saleDetailDTOList[i].stockLogList1[m].attributeList)
|
||
|
|
newSaleDetailDTOList[hasCount].productCount = Number(newSaleDetailDTOList[hasCount]
|
||
|
|
.productCount) + Number(item.saleDetailDTOList[i].stockLogList1[m].productCount)
|
||
|
|
if(this.isCancel == true){
|
||
|
|
newSaleDetailDTOList[hasCount].stockCount = newSaleDetailDTOList[hasCount].stockCount + newSaleDetailDTOList[hasCount].productCount
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
item.saleDetailDTOList[i].stockLogList1[m].name = this.sliceMsg(item.saleDetailDTOList[i]
|
||
|
|
.stockLogList1[m].attributeList)
|
||
|
|
if(this.isCancel == true){
|
||
|
|
item.saleDetailDTOList[i].stockLogList1[m].stockCount = item.saleDetailDTOList[i].stockLogList1[m].stockCount + item.saleDetailDTOList[i].stockLogList1[m].productCount
|
||
|
|
}
|
||
|
|
newSaleDetailDTOList.push(item.saleDetailDTOList[i].stockLogList1[m])
|
||
|
|
attrMap.set(item.saleDetailDTOList[i].stockLogList1[m].attributeList, num)
|
||
|
|
num++
|
||
|
|
}
|
||
|
|
|
||
|
|
}
|
||
|
|
obj.saleDetailQueryDTO = newSaleDetailDTOList
|
||
|
|
obj.num = 0
|
||
|
|
obj.customerCategoryRule = item.saleDetailDTOList[i].customerCategoryRule != null ?JSON.parse(item.saleDetailDTOList[i].customerCategoryRule):null
|
||
|
|
obj.id = item.saleDetailDTOList[i].productId
|
||
|
|
obj.price = item.saleDetailDTOList[i].price
|
||
|
|
if(item.status == '6'){
|
||
|
|
obj.buyCount = item.saleDetailDTOList[i].buyCount
|
||
|
|
}else{
|
||
|
|
obj.buyCount = item.saleDetailDTOList[i].buyCount - 1
|
||
|
|
}
|
||
|
|
|
||
|
|
obj.lsprice = item.saleDetailDTOList[i].price
|
||
|
|
obj.categoryId = item.saleDetailDTOList[i].categoryId
|
||
|
|
obj.zPrice = item.saleDetailDTOList[i].discountAmount
|
||
|
|
obj.attrId = item.saleDetailDTOList[i].attrId
|
||
|
|
obj.discountAmount = item.saleDetailDTOList[i].discountAmount
|
||
|
|
obj.productName = item.saleDetailDTOList[i].productName
|
||
|
|
if(item.saleDetailDTOList[i].productPicture != null && item.saleDetailDTOList[i].productPicture != ''){
|
||
|
|
obj.productPicture = item.saleDetailDTOList[i].productPicture + '?time=' + new Date().getTime()
|
||
|
|
}else{
|
||
|
|
obj.productPicture = ""
|
||
|
|
}
|
||
|
|
obj.productSn = item.saleDetailDTOList[i].productSn
|
||
|
|
obj.wholesalePrice = item.saleDetailDTOList[i].wholesalePrice
|
||
|
|
obj.returnPrice = item.saleDetailDTOList[i].returnPrice
|
||
|
|
if(type == 'copy'){
|
||
|
|
obj.saleId = ''
|
||
|
|
}else{
|
||
|
|
obj.saleId = item.id
|
||
|
|
}
|
||
|
|
obj.remark = item.remark
|
||
|
|
obj.xsyId = item.createBy
|
||
|
|
obj.createByName = item.createByName
|
||
|
|
if(type == 'cancel'){
|
||
|
|
obj.unitPrice = this.getUnitPrice(item,item.saleDetailDTOList[i])
|
||
|
|
}else{
|
||
|
|
obj.unitPrice = item.saleDetailDTOList[i].discountAmount
|
||
|
|
}
|
||
|
|
dataList.push(obj)
|
||
|
|
}
|
||
|
|
} else {
|
||
|
|
let obj = {}
|
||
|
|
obj.num = 0
|
||
|
|
obj.price = 0
|
||
|
|
if(type == 'copy'){
|
||
|
|
obj.saleId = ''
|
||
|
|
}else{
|
||
|
|
obj.saleId = item.id
|
||
|
|
}
|
||
|
|
obj.remark = item.remark
|
||
|
|
obj.xsyId = item.createBy
|
||
|
|
obj.createByName = item.createByName
|
||
|
|
dataList.push(obj)
|
||
|
|
}
|
||
|
|
this.$nextTick(()=>{
|
||
|
|
this.tui.request("/app/debt/selectByUserId", "post", {
|
||
|
|
shopId:uni.getStorageSync('shopId'),
|
||
|
|
userId:item.userId
|
||
|
|
}, false, true).then((res) => {
|
||
|
|
if (res.code == 200) {
|
||
|
|
this.returnList = new Map()
|
||
|
|
res.result.noEarn = res.result.amountOwed
|
||
|
|
res.result.name = res.result.userName
|
||
|
|
res.result.id = item.userId
|
||
|
|
uni.setStorageSync('khName', JSON.stringify(res.result))
|
||
|
|
uni.setStorageSync('carList1', JSON.stringify(dataList))
|
||
|
|
if(type == 'cancel'){
|
||
|
|
uni.setStorageSync('discountAll', item.discount != null ?item.discount:10)
|
||
|
|
}
|
||
|
|
uni.setStorageSync('hangOrder', true)
|
||
|
|
let windowWidth = '1'
|
||
|
|
if(uni.getStorageSync('shopName').indexOf('杰娜世家') != -1){
|
||
|
|
windowWidth = '0'
|
||
|
|
}
|
||
|
|
if(windowWidth == '1'){
|
||
|
|
uni.switchTab({
|
||
|
|
url: '/pages/inventory/goodsList1'
|
||
|
|
})
|
||
|
|
}else{
|
||
|
|
uni.navigateTo({
|
||
|
|
url: '/package2/inventory/goodsList1HENG'
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
})
|
||
|
|
},
|
||
|
|
//点击打印按钮
|
||
|
|
printCodeBtn(){
|
||
|
|
this.btnStatus = !this.btnStatus
|
||
|
|
},
|
||
|
|
// checkboxChange(e){
|
||
|
|
|
||
|
|
// },
|
||
|
|
delItemModal(item) {
|
||
|
|
|
||
|
|
let that = this;
|
||
|
|
uni.showModal({
|
||
|
|
title: "提示",
|
||
|
|
content: "确定删除此条待配货订单吗?",
|
||
|
|
success: function(res) {
|
||
|
|
if (res.confirm) {
|
||
|
|
that.tui.request("/app/sale/delById", "post", {
|
||
|
|
id: item.id,
|
||
|
|
}, false, true).then((res) => {
|
||
|
|
if (res.code == 200) {
|
||
|
|
that.getOrderInfoList();
|
||
|
|
uni.showToast({
|
||
|
|
title:"删除成功",
|
||
|
|
icon: 'none'
|
||
|
|
})
|
||
|
|
} else {
|
||
|
|
uni.showToast({
|
||
|
|
title:"删除失败",
|
||
|
|
icon: 'none'
|
||
|
|
})
|
||
|
|
}
|
||
|
|
}).catch((res) => {})
|
||
|
|
}
|
||
|
|
}
|
||
|
|
})
|
||
|
|
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
<style lang="scss">
|
||
|
|
page{
|
||
|
|
font-size: 24rpx;
|
||
|
|
}
|
||
|
|
.u-transition{
|
||
|
|
width: 100%;
|
||
|
|
position: fixed;
|
||
|
|
top: 400rpx;
|
||
|
|
z-index: 99;
|
||
|
|
}
|
||
|
|
@media screen and (min-width: 760px) {
|
||
|
|
.u-transition{
|
||
|
|
width: 100%;
|
||
|
|
position: fixed;
|
||
|
|
top: 396rpx;
|
||
|
|
z-index: 99;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
.search {
|
||
|
|
padding: 20upx;
|
||
|
|
background-color: #fff;
|
||
|
|
width: 100%;
|
||
|
|
background-color: #fff;
|
||
|
|
}
|
||
|
|
.uni-searchbar{
|
||
|
|
padding: 20rpx 0 !important;
|
||
|
|
}
|
||
|
|
.dayin-text{
|
||
|
|
flex: 1;
|
||
|
|
text-align: right;
|
||
|
|
padding-right: 20rpx;
|
||
|
|
text-decoration: underline;
|
||
|
|
color: blue;
|
||
|
|
}
|
||
|
|
.ulList {
|
||
|
|
|
||
|
|
ul {
|
||
|
|
li {
|
||
|
|
font-size: 24rpx;
|
||
|
|
|
||
|
|
.floatRight {
|
||
|
|
float: right;
|
||
|
|
padding: 14rpx;
|
||
|
|
color: $u-primary;
|
||
|
|
font-size: 26upx;
|
||
|
|
}
|
||
|
|
|
||
|
|
.cardText {
|
||
|
|
font-size: 24rpx;
|
||
|
|
}
|
||
|
|
|
||
|
|
.priceText {
|
||
|
|
color: $u-primary;
|
||
|
|
font-size: 28rpx;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
.order-bottom{
|
||
|
|
background: #fff;
|
||
|
|
height: 120rpx;
|
||
|
|
width: 100%;
|
||
|
|
position: fixed;
|
||
|
|
bottom:0;
|
||
|
|
|
||
|
|
button{
|
||
|
|
width: 90%;
|
||
|
|
height: 80rpx;
|
||
|
|
margin: 0 auto;
|
||
|
|
background: #088FEB;
|
||
|
|
color: #fff;
|
||
|
|
margin-top: 20rpx;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
.paixu-content{
|
||
|
|
height: 100rpx;
|
||
|
|
line-height: 100rpx;
|
||
|
|
text-align: center;
|
||
|
|
font-size: 30rpx;
|
||
|
|
font-weight: bold;
|
||
|
|
}
|
||
|
|
.nahuo-mask{
|
||
|
|
height: 1200rpx;
|
||
|
|
background: rgba(0, 0, 0, 0.6);
|
||
|
|
position: fixed;
|
||
|
|
top: 200rpx;
|
||
|
|
right: 0;
|
||
|
|
z-index: 100;
|
||
|
|
width: 100%;
|
||
|
|
}
|
||
|
|
</style>
|