Commit a4a4a4c2 authored by xiangzj's avatar xiangzj

以酒促酒功能

parent d4d6c62f
...@@ -303,8 +303,8 @@ ...@@ -303,8 +303,8 @@
"titleAlign": "left", "titleAlign": "left",
"titleColor": "#333", "titleColor": "#333",
"titleSize": "17px", "titleSize": "17px",
"backgroundColor": "#fff", "backgroundColor": "transparent",
"titleText": "未发货产品", "titleText": "选择要货类型",
"autoBackButton": false, "autoBackButton": false,
"splitLine": true "splitLine": true
} }
...@@ -324,7 +324,22 @@ ...@@ -324,7 +324,22 @@
// } // }
// } // }
// } // }
}, { },{
"path": "pages/purchase/purchase-list",
"style": {
"app-plus": {
"titleNView": {
"titleAlign": "left",
"titleColor": "#333",
"titleSize": "17px",
"backgroundColor": "#fff",
"titleText": "未发货产品",
"autoBackButton": true
}
}
}
},
{
"path": "pages/purchase/purchase-apply", "path": "pages/purchase/purchase-apply",
"style": { "style": {
"app-plus": { "app-plus": {
......
...@@ -65,6 +65,10 @@ ...@@ -65,6 +65,10 @@
<text class="detal-item-label">未发货件数</text> <text class="detal-item-label">未发货件数</text>
<text class="detal-item-value">{{ele.undeliveredQuantity}}</text> <text class="detal-item-value">{{ele.undeliveredQuantity}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">未发货瓶数</text>
<text class="detal-item-value">{{ele.availableBot}}</text>
</view>
<!-- <view class="block-detal-item"> <!-- <view class="block-detal-item">
<text class="detal-item-label">传统当月计划量</text> <text class="detal-item-label">传统当月计划量</text>
<text class="detal-item-value">{{ele.applyNum}}</text> <text class="detal-item-value">{{ele.applyNum}}</text>
...@@ -207,7 +211,7 @@ ...@@ -207,7 +211,7 @@
receiveInfoHeightComputed() { receiveInfoHeightComputed() {
console.log(this.receiveInfoHeight - 0,'[][]') console.log(this.receiveInfoHeight - 0,'[][]')
if(this.receiveInfoHeight - 0 === 0){ if(this.receiveInfoHeight - 0 === 0){
const height = this.allFiles.length > 0 ? 485 : 385 const height = this.allFiles.length > 0 ? 485 : 0
return { "minHeight": height + "px" } return { "minHeight": height + "px" }
}else{ }else{
return { return {
...@@ -242,8 +246,8 @@ ...@@ -242,8 +246,8 @@
// 获取arraybuffer格式数据 // 获取arraybuffer格式数据
let res = await uni.request({ let res = await uni.request({
method: "POST", method: "POST",
url: `https://crm.wuliangye.com.cn/crm-app/attachmentDownFile?id=`+item.id, //生产 //url: `https://crm.wuliangye.com.cn/crm-app/attachmentDownFile?id=`+item.id, //生产
// url: `http://221.10.127.60:5000/crm-app/attachmentDownFile?id=`+item.id, url: `http://221.10.127.60:5000/crm-app/attachmentDownFile?id=`+item.id,
params: { params: {
id: item.id id: item.id
}, },
...@@ -500,8 +504,7 @@ ...@@ -500,8 +504,7 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
margin-top: 40rpx; margin-top: 40rpx;
height: 240rpx; min-height: 240rpx;
overflow: hidden;
// padding-bottom: 96rpx; // padding-bottom: 96rpx;
} }
...@@ -556,7 +559,7 @@ ...@@ -556,7 +559,7 @@
} }
.upload-block { .upload-block {
display: flex; display: flex;
height: 388rpx; height: 88rpx;
border-radius: 4px; border-radius: 4px;
margin-top: 20rpx; margin-top: 20rpx;
flex-direction: column; flex-direction: column;
......
...@@ -64,17 +64,29 @@ ...@@ -64,17 +64,29 @@
<text class="detal-item-value">{{item.ZZFLD00000F}}</text> <text class="detal-item-value">{{item.ZZFLD00000F}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">总计划量</text> <text class="detal-item-label">总计划量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000H}}</text> <text class="detal-item-value">{{item.ZZFLD00000H}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">本次占用计划数量</text> <text class="detal-item-label">本次占用计划数量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000R}}</text> <text class="detal-item-value">{{item.ZZFLD00000R}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">剩余可用计划量</text> <text class="detal-item-label">剩余可用计划量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000P}}</text> <text class="detal-item-value">{{item.ZZFLD00000P}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">总计划量(瓶)</text>
<text class="detal-item-value">{{item.TOTAL_BOT}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">本次占用计划数量(瓶)</text>
<text class="detal-item-value">{{item.CURNT_ATPBOT}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">剩余可用计划量(瓶)</text>
<text class="detal-item-value">{{item.REMAIN_BOT}}</text>
</view>
</view> </view>
</view> </view>
<view class="order-middle view" :class="{'order-middle-auto':ishowReceiveDetail}" <view class="order-middle view" :class="{'order-middle-auto':ishowReceiveDetail}"
...@@ -100,9 +112,13 @@ ...@@ -100,9 +112,13 @@
<text class="detal-item-label">件数</text> <text class="detal-item-label">件数</text>
<text class="detal-item-value">{{item.ZZFLD000009}}</text> <text class="detal-item-value">{{item.ZZFLD000009}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">瓶数</text>
<text class="detal-item-value">{{item.USE_BOT}}</text>
</view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">数量</text> <text class="detal-item-label">数量</text>
<text class="detal-item-value">{{item.ZZFLD000009*item.ZZFLD00002W}}</text> <text class="detal-item-value">{{item.QUANTITY}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">单价</text> <text class="detal-item-label">单价</text>
......
...@@ -33,7 +33,8 @@ ...@@ -33,7 +33,8 @@
async getClientByApp(){ async getClientByApp(){
const res = await getClientByApp({code: this.userInfo.code}) const res = await getClientByApp({code: this.userInfo.code})
if(res){ if(res){
this.src = 'https://yingxiao.wuliangye.com.cn/webroot/login/jxsLogin.html?'+res this.src = 'https://yingxiao.wuliangye.com.cn/webroot/login/jxsLogin_test.html?'+res //测试环境
// this.src = 'https://yingxiao.wuliangye.com.cn/webroot/login/jxsLogin.html?'+res //生产环境
}else{ }else{
uni.showToast({ uni.showToast({
title: '权限校验不通过', title: '权限校验不通过',
......
...@@ -112,6 +112,10 @@ ...@@ -112,6 +112,10 @@
<text class="middle-date">未发货件数</text> <text class="middle-date">未发货件数</text>
<text class="middle-date-des">{{ele.undeliveredQuantity}}</text> <text class="middle-date-des">{{ele.undeliveredQuantity}}</text>
</view> </view>
<view class="text-block">
<text class="middle-date">未发货瓶数</text>
<text class="middle-date-des">{{ele.availableBot}}</text>
</view>
<!-- <view class="text-block"> <!-- <view class="text-block">
<text class="middle-date">传统当月计划量</text> <text class="middle-date">传统当月计划量</text>
<text class="middle-date-des">{{ele.planQuantity}}</text> <text class="middle-date-des">{{ele.planQuantity}}</text>
......
...@@ -127,6 +127,56 @@ ...@@ -127,6 +127,56 @@
</view> </view>
</view> </view>
</view> </view>
<view class="text-block">
<text class="middle-date">总计划量(瓶)</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="uni-input">{{clueDetail.total_bot}}</text>
</view>
</view>
</view>
</view>
<view class="text-block">
<text class="middle-date">初始计划量(瓶)</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="uni-input">{{clueDetail.initplan_bot}}</text>
</view>
</view>
</view>
</view>
<view class="text-block">
<text class="middle-date">已开票计划量(瓶)</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="uni-input">{{clueDetail.billing_bot}}</text>
</view>
</view>
</view>
</view>
<view class="text-block">
<text class="middle-date">已占用计划量(瓶)</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="uni-input">{{clueDetail.atp_bot}}</text>
</view>
</view>
</view>
</view>
<view class="text-block">
<text class="middle-date">剩余可用计划量(瓶)</text>
<view class="middle-date-des uni-list picker-year">
<view class="uni-list-cell">
<view class="uni-list-cell-db">
<text class="uni-input">{{clueDetail.remain_bot}}</text>
</view>
</view>
</view>
</view>
<view class="text-block"> <view class="text-block">
<text class="middle-date">总计划额(万元)</text> <text class="middle-date">总计划额(万元)</text>
<view class="middle-date-des uni-list picker-year"> <view class="middle-date-des uni-list picker-year">
......
...@@ -106,10 +106,26 @@ ...@@ -106,10 +106,26 @@
<text class="detal-item-label">已开票计划(件)</text> <text class="detal-item-label">已开票计划(件)</text>
<text class="detal-item-value">{{item.billing_qty}}</text> <text class="detal-item-value">{{item.billing_qty}}</text>
</view> </view>
<view class="block-detal-item block-detal-item-last"> <view class="block-detal-item">
<text class="detal-item-label">已占用计划(件)</text> <text class="detal-item-label">已占用计划(件)</text>
<text class="detal-item-value">{{item.atp_qty}}</text> <text class="detal-item-value">{{item.atp_qty}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">总计划(瓶)</text>
<text class="detal-item-value">{{item.total_bot}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">初始计划(瓶)</text>
<text class="detal-item-value">{{item.initplan_bot}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">已开票计划(瓶)</text>
<text class="detal-item-value">{{item.billing_bot}}</text>
</view>
<view class="block-detal-item block-detal-item-last">
<text class="detal-item-label">已占用计划(瓶)</text>
<text class="detal-item-value">{{item.atp_bot}}</text>
</view>
</view> </view>
</view> </view>
</cell> </cell>
......
...@@ -350,8 +350,8 @@ ...@@ -350,8 +350,8 @@
// 获取arraybuffer格式数据 // 获取arraybuffer格式数据
let res = await uni.request({ let res = await uni.request({
method: "POST", method: "POST",
url: `https://crm.wuliangye.com.cn/crm-app/attachmentDownFile?id=`+item.id, // 生产 // url: `https://crm.wuliangye.com.cn/crm-app/attachmentDownFile?id=`+item.id, // 生产
// url: `http://221.10.127.60:5000/crm-app/attachmentDownFile?id=`+item.id, url: `http://221.10.127.60:5000/crm-app/attachmentDownFile?id=`+item.id,
params: { params: {
id: item.id id: item.id
}, },
...@@ -506,8 +506,8 @@ ...@@ -506,8 +506,8 @@
data.tempFilePaths.forEach((item,idx) => { data.tempFilePaths.forEach((item,idx) => {
console.log('idx',data.tempFilePaths[idx],data.tempFiles[idx].file.name) console.log('idx',data.tempFilePaths[idx],data.tempFiles[idx].file.name)
uni.uploadFile({ uni.uploadFile({
url: `https://crm.wuliangye.com.cn/crm-app/webUpload/ajaxUpload`, //生产 // url: `https://crm.wuliangye.com.cn/crm-app/webUpload/ajaxUpload`, //生产
// url: `http://221.10.127.60:5000/crm-app/webUpload/ajaxUpload`, url: `http://221.10.127.60:5000/crm-app/webUpload/ajaxUpload`,
filePath: data.tempFilePaths[idx], filePath: data.tempFilePaths[idx],
name: 'file', name: 'file',
formData: { formData: {
...@@ -918,6 +918,7 @@ ...@@ -918,6 +918,7 @@
padding: 0 32rpx; padding: 0 32rpx;
justify-content: space-between; justify-content: space-between;
align-items: center; align-items: center;
background: #fff;
} }
.btn { .btn {
......
This diff is collapsed.
This diff is collapsed.
...@@ -37,6 +37,10 @@ ...@@ -37,6 +37,10 @@
<text class="detal-item-label">数量(件)</text> <text class="detal-item-label">数量(件)</text>
<text class="detal-item-value">{{item.quantity}}</text> <text class="detal-item-value">{{item.quantity}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">数量(瓶)</text>
<text class="detal-item-value">{{item.USE_BOT}}</text>
</view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">单价</text> <text class="detal-item-label">单价</text>
<text class="detal-item-value">{{item.NET_PRICE}}</text> <text class="detal-item-value">{{item.NET_PRICE}}</text>
...@@ -84,17 +88,29 @@ ...@@ -84,17 +88,29 @@
<text class="detal-item-value">{{item.ZZFLD00000F}}</text> <text class="detal-item-value">{{item.ZZFLD00000F}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">总计划量</text> <text class="detal-item-label">总计划量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000H}}</text> <text class="detal-item-value">{{item.ZZFLD00000H}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">本次占用计划数量</text> <text class="detal-item-label">本次占用计划数量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000R}}</text> <text class="detal-item-value">{{item.ZZFLD00000R}}</text>
</view> </view>
<view class="block-detal-item"> <view class="block-detal-item">
<text class="detal-item-label">剩余可用计划量</text> <text class="detal-item-label">剩余可用计划量(件)</text>
<text class="detal-item-value">{{item.ZZFLD00000P}}</text> <text class="detal-item-value">{{item.ZZFLD00000P}}</text>
</view> </view>
<view class="block-detal-item">
<text class="detal-item-label">总计划量(瓶)</text>
<text class="detal-item-value">{{item.TOTAL_BOT}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">本次占用计划数量(瓶)</text>
<text class="detal-item-value">{{item.CURNT_ATPBOT}}</text>
</view>
<view class="block-detal-item">
<text class="detal-item-label">剩余可用计划量(瓶)</text>
<text class="detal-item-value">{{item.REMAIN_BOT}}</text>
</view>
</view> </view>
<view class="middle summary"> <view class="middle summary">
<view class="summary-block"> <view class="summary-block">
......
...@@ -93,7 +93,18 @@ ...@@ -93,7 +93,18 @@
<!-- <text class="mustPosIcon">*</text> --> <!-- <text class="mustPosIcon">*</text> -->
<!-- <text class="middle-date">数量(件)</text> --> <!-- <text class="middle-date">数量(件)</text> -->
<input class="middle-date-des" type="number" :value="item.quantity" <input class="middle-date-des" type="number" :value="item.quantity"
@input="calcInnerTotal($event,item,index)" @input="calcInnerTotal($event,item,index,'qty')"
@blur="updateQuotaData(index,'inner',item)" placeholder="请填写" />
</view>
<view class="text-block">
<view class="middle-date">
<text class="mustPosIcon">*</text>
<text class="middle-date">数量(瓶)</text>
</view>
<!-- <text class="mustPosIcon">*</text> -->
<!-- <text class="middle-date">数量(件)</text> -->
<input class="middle-date-des" type="number" :value="item.USE_BOT"
@input="calcInnerTotal($event,item,index,'bot')"
@blur="updateQuotaData(index,'inner',item)" placeholder="请填写" /> @blur="updateQuotaData(index,'inner',item)" placeholder="请填写" />
</view> </view>
<view class="text-block"> <view class="text-block">
...@@ -372,7 +383,7 @@ ...@@ -372,7 +383,7 @@
// 销售计划编号、产品编号和件数 都有才请求 // 销售计划编号、产品编号和件数 都有才请求
if (!(productAfterInit?.product_info?.PRODUCT_ID && productAfterInit?.salesplan_info?.PLAN_NUMBER && if (!(productAfterInit?.product_info?.PRODUCT_ID && productAfterInit?.salesplan_info?.PLAN_NUMBER &&
productAfterInit?.ZZFLD000009)) { (productAfterInit?.ZZFLD000009 || productAfterInit?.USE_BOT))) {
return return
} }
...@@ -492,8 +503,8 @@ ...@@ -492,8 +503,8 @@
return obj return obj
}, },
// 计算小计 // 计算小计
calcInnerTotal(e, item, i) { calcInnerTotal(e, item, i,type) {
// console.log('sss', item, e) console.log('sss', e, item, i)
let value = 0 let value = 0
if (e.target.value) { if (e.target.value) {
value = e.target.value value = e.target.value
...@@ -502,13 +513,23 @@ ...@@ -502,13 +513,23 @@
value = e.detail.value value = e.detail.value
e.detail.value = value * 1 e.detail.value = value * 1
} }
if(type === 'qty'){
this.planinnerLists.forEach((product, index) => { // 件数
if (i === index) { this.planinnerLists.forEach((product, index) => {
product.quantity = value * 1 if (i === index) {
product.total = value * item.NET_VALUE * 1 || 0 product.quantity = value * 1
} product.total = (value * product.ZZFLD00002W + product.USE_BOT) * item.NET_PRICE * 1 || 0
}) }
})
}else{
// 瓶数
this.planinnerLists.forEach((product, index) => {
if (i === index) {
product.USE_BOT = value * 1
product.total = (value + product.quantity * product.ZZFLD00002W) * item.NET_PRICE * 1 || 0
}
})
}
// value = `${value}`.replace(/[^0-9]/g, '') // 正则判断只能输入数字 // value = `${value}`.replace(/[^0-9]/g, '') // 正则判断只能输入数字
}, },
// 计算小计 // 计算小计
......
...@@ -99,6 +99,10 @@ ...@@ -99,6 +99,10 @@
<text class="middle-date">可用件数</text> <text class="middle-date">可用件数</text>
<text class="middle-date-des">{{item.REMAIN_QTY}}</text> <text class="middle-date-des">{{item.REMAIN_QTY}}</text>
</view> </view>
<view class="text-block text-block-last">
<text class="middle-date">可用瓶数</text>
<text class="middle-date-des">{{item.REMAIN_BOT}}</text>
</view>
</view> </view>
<!-- </uni-swipe-action-item> <!-- </uni-swipe-action-item>
......
...@@ -37,33 +37,44 @@ ...@@ -37,33 +37,44 @@
</view> </view>
<view class="text-block-2"> <view class="text-block-2">
<view class="text-block text-block-1"> <view class="text-block text-block-1">
<text class="middle-date-des">开票件数({{item.zzfld00002t}})</text> <text class="middle-date-des">开票件数</text>
<text class="middle-date">{{item.use_zzfld9}}</text> <text class="middle-date">{{item.use_zzfld9}}</text>
</view> </view>
<view class="text-block"> <view class="text-block">
<text class="middle-date-des">数量(瓶)</text> <text class="middle-date-des">开票瓶数</text>
<text class="middle-date">{{item.use_quantity}}</text> <text class="middle-date">{{item.use_bot}}</text>
</view> </view>
</view> </view>
<view class="text-block-2"> <view class="text-block-2">
<view class="text-block text-block-1"> <view class="text-block text-block-1">
<text class="middle-date-des">单价</text> <text class="middle-date-des">总共数量(瓶)</text>
<text class="middle-date">{{item.net_price}}</text> <text class="middle-date">{{item.use_quantity}}</text>
</view> </view>
<view class="text-block"> <view class="text-block">
<text class="middle-date-des">价税合计</text> <text class="middle-date-des">单价</text>
<text class="middle-date">{{item.net_value}}</text> <text class="middle-date">{{item.net_price}}</text>
</view> </view>
</view> </view>
<view class="text-block-2"> <view class="text-block-2">
<view class="text-block text-block-1"> <view class="text-block text-block-1">
<text class="middle-date-des">价税合计</text>
<text class="middle-date">{{item.net_value}}</text>
</view>
<view class="text-block">
<text class="middle-date-des">税率</text> <text class="middle-date-des">税率</text>
<text class="middle-date">{{item.zzfld00002e}}</text> <text class="middle-date">{{item.zzfld00002e}}</text>
</view> </view>
<view class="text-block"> </view>
<view class="text-block-2">
<view class="text-block text-block-1">
<text class="middle-date-des">剩余开票件数</text> <text class="middle-date-des">剩余开票件数</text>
<text class="middle-date">{{item.remain_zzfld9}}</text> <text class="middle-date">{{item.remain_zzfld9}}</text>
</view> </view>
<view class="text-block">
<text class="middle-date-des">剩余开票瓶数</text>
<text class="middle-date">{{item.remain_bot}}</text>
</view>
</view> </view>
<!-- <view class="text-block-2"> --> <!-- <view class="text-block-2"> -->
<!-- <view class="text-block text-block-1"> <!-- <view class="text-block text-block-1">
......
...@@ -10,6 +10,11 @@ export async function apiPurchaseList(params) { ...@@ -10,6 +10,11 @@ export async function apiPurchaseList(params) {
const res = await apiHelper.post('/crm-app/Invinfo/getUnFinishedInv'+params) const res = await apiHelper.post('/crm-app/Invinfo/getUnFinishedInv'+params)
return res return res
} }
// 以酒促酒
export async function apiGetUnFinishedInvByPromote(params) {
const res = await apiHelper.post('/crm-app/Invinfo/getUnFinishedInvByPromote'+params)
return res
}
export async function querySysDictionaryDetailsByCode(params) { export async function querySysDictionaryDetailsByCode(params) {
const res = await apiHelper.post('/crm-app/dictionary/querySysDictionaryDetailsByCode', params, { const res = await apiHelper.post('/crm-app/dictionary/querySysDictionaryDetailsByCode', params, {
......
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 to comment