소스 검색

线上支付订单

chenrui 5 달 전
부모
커밋
8e70b8f020
7개의 변경된 파일128개의 추가작업 그리고 58개의 파일을 삭제
  1. 2 1
      config/index.js
  2. 13 0
      pages/sales/edit.vue
  3. 31 22
      pages/sales/index.vue
  4. 72 33
      pages/sales/list.vue
  5. 8 0
      pages/sales/orderInfoModal.vue
  6. 2 2
      pages/sales/salesSearch.vue
  7. BIN
      static/default/navIcon/mobilePay.png

+ 2 - 1
config/index.js

@@ -6,7 +6,7 @@ const getConfig = (theme) => {
 			themePath: 'default',
 			pro_URL: 'https://iscm.360arrow.com/qpls-md/', // 生产地址
 			uat_URL: 'https://p.iscm.360arrow.com/qpls-md/', // 预发布地址
-			dev_URL: 'http://192.168.2.100:88/qpls-md/', // 本地地址
+			dev_URL: 'http://192.168.2.113:8550/qpls-md/', // 本地地址
 			appName: 'iSCM智慧供应链', // app 名称
 			company: '陕西山海高科信息技术有限公司',
 			loadText:{
@@ -19,6 +19,7 @@ const getConfig = (theme) => {
 			errorColor: '#E70012', // 错误
 			successColor: '#13C442', // 成功
 			infoColor: '#909399',
+			orangeColor: '#FF5500',
 			topBarBackground: 'linear-gradient(45deg, #fff, #fff)', // 顶部栏渐变色
 			topBarTitleColors: '#222222', // 顶部栏文字颜色
 		},

+ 13 - 0
pages/sales/edit.vue

@@ -58,6 +58,9 @@
 								<view v-if="(isOwerEdit && item.oosFlag == 1) || (isOwerEdit && item.oosFlag == 1)" class="sign" :style="{backgroundColor: $config('errorColor')}">急</view>
 								<view v-if="item.price < item.cost" class="sign" :style="{backgroundColor: $config('warringColor')}">亏</view>
 								<view v-if="!isOwerEdit&&!isAudit&&(!item.currentStockQty || item.currentStockQty < item.qty)" class="sign" :style="{backgroundColor: $config('errorColor')}">缺</view>
+								<view class="sign1" v-if="detailData&&detailData.payOnlineFlag==1&&item.promoProductType=='GIFT_PRODUCT'" :style="{backgroundColor: $config('successColor')}">赠</view>
+								<view class="sign1" v-if="detailData&&detailData.payOnlineFlag==1&&item.promoProductType=='TICKET_PRODUCT'" :style="{backgroundColor: $config('orangeColor')}">券</view>
+								<view class="sign1" v-if="detailData&&detailData.payOnlineFlag==1&&item.promoProductType=='SPECIAL_PRODUCT'"  :style="{backgroundColor: $config('warringColor')}">特</view>
 							</view>
 							<view class="sales-item-main flex_1">
 								<view class="sales-item-name">{{item.productName || '--'}}</view>
@@ -484,6 +487,16 @@
 								height: 40upx;
 								text-align: center;
 							}
+							.sign1{
+								position: absolute;
+								right: 45upx;
+								top: -2upx;
+								color: #fff;
+								border-radius: 50%;
+								width: 40upx;
+								height: 40upx;
+								text-align: center;
+							}
 						}
 						.sales-item-main{
 							.sales-item-name{

+ 31 - 22
pages/sales/index.vue

@@ -22,27 +22,33 @@
 				</view>
 			</view>
 			<!-- 产品报价及新增销售单 -->
-			<view class="nav-cont flex align_center">
-				<view class="nav-item" @click="toPage('/pages/sales/productPricing')" v-if="$hasPermissions('M_productPrice_mobile')">
-					<u-image class="nav-pic" style="margin-top: 5upx;" :src="`../../static/${theme}/navIcon/price_icon.png`" width="60" height="60"></u-image>
-					<text class="nav-txt" style="margin-top: 5upx;">产品报价</text>
-				</view>
-				<!-- <view class="nav-item" @click="toPage('/pages/sales/chooseCustomer?backPage=addSales')">
-					<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/sale_icon.png`" width="70" height="70"></u-image>
-					<text class="nav-txt">新增销售单</text>
-				</view> -->
-				<view class="nav-item" @click="toPage('/pages/webviews/openview?title=产品查询&url=https://jgqp.51cjml.com/h5/#!/')" v-if="$hasPermissions('M_queryProduct_mobile')">
-					<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/pfind.png`" width="64" height="64"></u-image>
-					<text class="nav-txt">产品查询</text>
-				</view>	
-				<view class="nav-item" @click="toPage('/pages/sales/productUniversal')" v-if="$hasPermissions('M_productUniversalList_mobile')">
-					<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/parts.png`" width="64" height="64"></u-image>
-					<text class="nav-txt">通用产品</text>
-				</view>	
-				<view class="nav-item" @click="toPage('/pages/sales/chooseCustomerBill')" v-if="$hasPermissions('M_ARStatement_mobile')">
-					<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/billImg.png`" width="64" height="64"></u-image>
-					<text class="nav-txt">应收对账单</text>
-				</view>
+			<view class="nav-cont">
+				<scroll-view scroll-x="true">
+					<view class="nav-item" @click="toPage('/pages/sales/productPricing')" v-if="$hasPermissions('M_productPrice_mobile')">
+						<u-image class="nav-pic" style="margin-top: 5upx;" :src="`../../static/${theme}/navIcon/price_icon.png`" width="60" height="60"></u-image>
+						<text class="nav-txt" style="margin-top: 5upx;">产品报价</text>
+					</view>
+					<!-- <view class="nav-item" @click="toPage('/pages/sales/chooseCustomer?backPage=addSales')">
+						<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/sale_icon.png`" width="70" height="70"></u-image>
+						<text class="nav-txt">新增销售单</text>
+					</view> -->
+					<view class="nav-item" @click="toPage('/pages/webviews/openview?title=产品查询&url=https://jgqp.51cjml.com/h5/#!/')" v-if="$hasPermissions('M_queryProduct_mobile')">
+						<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/pfind.png`" width="64" height="64"></u-image>
+						<text class="nav-txt">产品查询</text>
+					</view>	
+					<view class="nav-item" @click="toPage('/pages/sales/productUniversal')" v-if="$hasPermissions('M_productUniversalList_mobile')">
+						<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/parts.png`" width="64" height="64"></u-image>
+						<text class="nav-txt">通用产品</text>
+					</view>	
+					<view class="nav-item" @click="toPage('/pages/sales/list?pageType=onlinePagOrder')" v-if="$hasPermissions('M_productUniversalList_mobile')">
+						<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/mobilePay.png`" width="64" height="64"></u-image>
+						<text class="nav-txt">线上支付订单</text>
+					</view>	
+					<view class="nav-item" @click="toPage('/pages/sales/chooseCustomerBill')" v-if="$hasPermissions('M_ARStatement_mobile')">
+						<u-image class="nav-pic" :src="`../../static/${theme}/navIcon/billImg.png`" width="64" height="64"></u-image>
+						<text class="nav-txt">应收对账单</text>
+					</view>
+				</scroll-view>
 			</view>
 			<!-- 销售单 -->
 			<view class="sales-list">
@@ -268,8 +274,11 @@
 			}
 		}
 		.nav-cont{
+			width:100%;
+			white-space: nowrap;
 			.nav-item{
-				flex:1;
+				width:27%;
+				display: inline-block;
 				margin-right: 2%;
 				border-radius: 25upx;
 				background-color: #ffffff;

+ 72 - 33
pages/sales/list.vue

@@ -1,27 +1,37 @@
 <template>
 	<view class="sales-list-wrap">
 		<u-dropdown class="search-top-box" id="tjCons">
-			<u-dropdown-item v-model="searchForm.billStatus" @change="handleChange('bill')" title="业务状态" :options="billStatusOpt"></u-dropdown-item>
-			<u-dropdown-item v-model="searchForm.financialStatus" @change="handleChange('financial')" title="财务状态" :options="financialStatusOpt"></u-dropdown-item>
+			<u-dropdown-item v-model="searchForm.billStatus" @change="handleChange('bill')" title="业务状态"
+				:options="billStatusOpt"></u-dropdown-item>
+			<u-dropdown-item v-model="searchForm.financialStatus" @change="handleChange('financial')" title="财务状态"
+				:options="(pageType&&pageType=='onlinePagOrder')?onlinePagStatusOpt:financialStatusOpt"></u-dropdown-item>
 		</u-dropdown>
 		<!-- 销售单列表 -->
 		<view class="list-box">
 			<listComponent ref="salesList" :height="listHeight" :params="searchForm" />
 		</view>
 		<!-- 查询右侧弹框 -->
-		<salesSearch ref="searchBox" :openModal="openModal" :defaultParams="searchForm" @refresh="refresh" @close="openModal=false" />
+		<salesSearch ref="searchBox" :openModal="openModal" :defaultParams="searchForm" @refresh="refresh"
+			@close="openModal=false" />
 	</view>
 </template>
 
 <script>
 	import ListComponent from './listComponent.vue'
 	import SalesSearch from './salesSearch.vue'
-	import { getLookUpItem } from '@/api/data'
-	import { salesList } from '@/api/sales'
-	export default{
-		components: { ListComponent, SalesSearch },
-		data(){
-			return{
+	import {
+		getLookUpItem
+	} from '@/api/data'
+	import {
+		salesList
+	} from '@/api/sales'
+	export default {
+		components: {
+			ListComponent,
+			SalesSearch
+		},
+		data() {
+			return {
 				listData: [],
 				pageNo: 1,
 				pageSize: 6,
@@ -29,19 +39,22 @@
 				noDataText: '暂无数据',
 				billStatusOpt: [],
 				financialStatusOpt: [],
+				onlinePagStatusOpt:[],
 				searchForm: {
 					billStatus: null,
-					financialStatus: null
+					financialStatus: null,
+					payOnlineFlag:null//1线上支付订单  0 支付订单
 				},
 				listHeight: 200,
-				openModal: false
+				openModal: false,
+				pageType:null
 			}
 		},
-		onNavigationBarButtonTap(e){  // 标题栏 按钮操作
+		onNavigationBarButtonTap(e) { // 标题栏 按钮操作
 			this.openModal = true
 		},
 		onBackPress() {
-			if(this.openModal){
+			if (this.openModal) {
 				this.$refs.searchBox.closeBox()
 				this.openModal = false
 				return true
@@ -50,61 +63,85 @@
 		onReady() {
 			const query = uni.createSelectorQuery().in(this);
 			query.select('#tjCons').boundingClientRect(data => {
-			  this.listHeight = Math.floor(data.height + 5)
+				this.listHeight = Math.floor(data.height + 5)
 			}).exec();
 		},
-		onLoad() {
+		onLoad(options) {
 			const _this = this
 			this.getLookUpItem('SALES_BILL_STATUS')
 			this.getLookUpItem('FINANCIAL_RECEIVE_STATUS')
-			this.$nextTick(function(){
+			this.getLookUpItem('FINANCIAL_ONLINE_RECEIVE_STATUS')
+			this.$nextTick(function() {
 				// 监听整改完成后刷新事件
-				uni.$on('refreshSalesBL', function(data){
+				uni.$on('refreshSalesBL', function(data) {
 					_this.$refs.salesList.getList(1)
 				})
 			})
+			this.searchForm.payOnlineFlag=options?(options.pageType&&options.pageType=='onlinePagOrder')?1:0:0
+			if (options) {
+				this.pageType = options.pageType
+				uni.setNavigationBarTitle({
+					title: '线上支付订单' // 页面标题为“新的页面标题”
+				});
+			}
+			console.log('111111:',this.searchForm.payOnlineFlag)
 		},
 		onUnload() {
 			uni.$off('refreshSalesBL')
 		},
 		methods: {
 			// 获取查询参数 刷新列表
-			refresh(params){
+			refresh(params) {
 				const _this = this
-				const data = params ? Object.assign(this.searchForm,params) :  {
+				const data = params ? Object.assign(this.searchForm, params) : {
 					billStatus: null,
 					financialStatus: null
 				}
 				data.beginDate = data.beginDate ? (data.beginDate + ' 00:00:00') : ''
 				data.endDate = data.endDate ? (data.endDate + ' 23:59:59') : ''
 				this.searchForm = data
-				this.$nextTick(function(){
+				this.$nextTick(function() {
 					_this.$refs.salesList.refash()
 				})
 			},
 			// 状态  change
-			handleChange(type){
+			handleChange(type) {
 				this.$refs.salesList.refash()
 			},
 			// 配送方式
-			getLookUpItem (type) {
-				getLookUpItem({ lookupCode: type, pageNo: 1, pageSize: 1000 }).then(res => {
+			getLookUpItem(type) {
+				getLookUpItem({
+					lookupCode: type,
+					pageNo: 1,
+					pageSize: 1000
+				}).then(res => {
 					if (res.status == 200 && res.data && res.data.list) {
 						res.data.list.map(item => {
 							item.label = item.dispName
 							item.value = item.code
 						})
-						res.data.list.splice(0, 0, { label: '全部', value: null })
-						if(type == 'SALES_BILL_STATUS'){
-							this.billStatusOpt = res.data.list
-						}else if(type == 'FINANCIAL_RECEIVE_STATUS'){
+						res.data.list.splice(0, 0, {
+							label: '全部',
+							value: null
+						})
+						if (type == 'SALES_BILL_STATUS') {
+							if(this.pageType =='onlinePagOrder'){
+								this.billStatusOpt = res.data.list.filter(item=>item.code!='WAIT_SUBMIT'&&item.code!='SUPERIOR_CHANGE')
+							}else{
+								this.billStatusOpt = res.data.list
+							}
+						} else if (type == 'FINANCIAL_RECEIVE_STATUS') {
 							this.financialStatusOpt = res.data.list
+						}else if(type=='FINANCIAL_ONLINE_RECEIVE_STATUS'){
+							this.onlinePagStatusOpt = res.data.list
 						}
 					} else {
-						if(type == 'SALES_BILL_STATUS'){
+						if (type == 'SALES_BILL_STATUS') {
 							this.billStatusOpt = []
-						}else if(type == 'FINANCIAL_RECEIVE_STATUS'){
+						} else if (type == 'FINANCIAL_RECEIVE_STATUS') {
 							this.financialStatusOpt = []
+						}else if(type=='FINANCIAL_ONLINE_RECEIVE_STATUS'){
+							this.onlinePagStatusOpt = []
 						}
 					}
 				})
@@ -114,13 +151,15 @@
 </script>
 
 <style lang="scss">
-	.sales-list-wrap{
+	.sales-list-wrap {
 		width: 100%;
-		.search-top-box{
+
+		.search-top-box {
 			background-color: #fff;
 		}
-		.list-box{
+
+		.list-box {
 			padding: 0 25upx;
 		}
 	}
-</style>
+</style>

+ 8 - 0
pages/sales/orderInfoModal.vue

@@ -72,6 +72,14 @@
 					<text class="info-item-tit">配送方式:</text>
 					<text class="info-item-txt">{{ (infoData && infoData.dispatchTypeDictValue) || '--' }}</text>
 				</view>
+				<view class="order-info-list" v-if="infoData&&infoData.sourceType!='SALES'">
+					<text class="info-item-tit">采购单号:</text>
+					<text class="info-item-txt">{{ (infoData && infoData.purchaseBillNo) || '--' }}</text>
+				</view>
+				<view class="order-info-list" v-if="infoData&&infoData.sourceType!='XPRH_PURCHASE'&&infoData.sourceType!='SALES'&&infoData.billStatus=='FINISH'">
+					<text class="info-item-tit">收货状态:</text>
+					<text class="info-item-txt">{{ (infoData && infoData.receiptStatusDictValue) || '--' }}</text>
+				</view>
 				<view class="order-info-list">
 					<text class="info-item-tit">业务员:</text>
 					<text class="info-item-txt">{{ (infoData && infoData.salesManName) || '--' }}</text>

+ 2 - 2
pages/sales/salesSearch.vue

@@ -14,10 +14,10 @@
 				<u-form-item label="采购单号" prop="purchaseBillNo" class="form-item">
 					<u-input v-model="form.purchaseBillNo" :maxlength="30" placeholder="请输入采购单号" />
 				</u-form-item>
-				<u-form-item label="收款方式" prop="settleStyleSn" class="form-item">
+				<u-form-item label="收款方式" prop="settleStyleSn" class="form-item" v-if="defaultParams&&defaultParams.payOnlineFlag==0">
 					<u-input clearable v-model="settleStyleName" @click="settleStyleModal=true" @clear="clearSettleStyle" type="select" placeholder="请选择收款方式"/>
 				</u-form-item>
-				<u-form-item label="单据来源" prop="settleStyleSn" class="form-item">
+				<u-form-item label="单据来源" prop="settleStyleSn" class="form-item" v-if="defaultParams&&defaultParams.payOnlineFlag==0">
 					<u-input clearable v-model="sourceTypeName" @click="sourceTypeModal=true" placeholder="请选择单据来源" type="select" @clear="clearSourceType" />
 				</u-form-item>
 				<!-- <u-form-item label="是否铺货" prop="settleStyleSn" class="form-item">

BIN
static/default/navIcon/mobilePay.png