From 8446232ae5dbee360a585e311c4bf4d25fc9e4e7 Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期四, 11 九月 2025 09:24:18 +0800
Subject: [PATCH] 版本更新

---
 manifest.json                       |    4 
 pages/gongxuOut/moneystatistics.vue |  484 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 486 insertions(+), 2 deletions(-)

diff --git a/manifest.json b/manifest.json
index 351d099..5a44968 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
     "name" : "鏅轰簯LMES",
     "appid" : "__UNI__B002F49",
     "description" : "",
-    "versionName" : "1.0.72",
-    "versionCode" : 172,
+    "versionName" : "1.0.73",
+    "versionCode" : 173,
     "transformPx" : false,
     /* 5+App鐗规湁鐩稿叧 */
     "app-plus" : {
diff --git a/pages/gongxuOut/moneystatistics.vue b/pages/gongxuOut/moneystatistics.vue
new file mode 100644
index 0000000..536af14
--- /dev/null
+++ b/pages/gongxuOut/moneystatistics.vue
@@ -0,0 +1,484 @@
+<template>
+	<view class="content">
+		<view class="form">
+			<view class="form-item">
+				<view class="title">鏈堜唤:</view>
+				<view class="right">
+					<picker :range="arrayHMonth" :value="hform.HMonth" @change="HMonthChange">
+						<input name="HMonth" disabled :value="hform.HMonth" placeholder="璇烽�夋嫨鏈堜唤" />
+					</picker>
+				</view>
+			</view>
+			<view class="form-item">
+				<view class="title">鎿嶄綔鍛�:</view>
+				<view class="right">
+					<picker :range="arrayHEmp" :value="hform.HEmp" @change="HEmpChange">
+						<input name="HEmp" disabled :value="hform.HEmp" placeholder="璇烽�夋嫨"  style="pointer-events: none;"/>
+					</picker>
+				</view>
+			</view>
+			<view class="buttons">
+				<button class="btn-a" size="mini" type="default" @tap="clear">閲嶇疆</button>
+				<button class="btn-c" size="mini" type="default" @tap="search">鏌ヨ</button>
+			</view>
+		</view>
+		
+		<view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+		<view class="tabs">
+			<view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">姹囨姤鍚堣</view>
+			<view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鏄庣粏淇℃伅</view>
+		</view>
+		<view class="list" v-for="(item,index) in showList" :key="index">
+			<uni-card :title="item.浠诲姟鍗�" :extra="item.鍗曟嵁鍙�" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
+				<view class="card-detail">
+					<view class="detail" v-if="item.宸ュ簭娴佽浆鍗″彿">
+						<text>娴佽浆鍗″彿锛�</text>{{item.宸ュ簭娴佽浆鍗″彿}}
+					</view>
+					<view class="detail" v-if="item.浜у搧鍚嶇О">
+						<text>浜у搧鍚嶇О锛�</text>{{item.浜у搧鍚嶇О}}
+					</view>
+					<view class="detail" v-if="item.浜у搧浠g爜">
+						<text>浜у搧浠g爜锛�</text>{{item.浜у搧浠g爜}}
+					</view>
+					<view class="detail" v-if="item.娆惧彿">
+						<text>娆惧彿锛�</text>{{item.娆惧彿}}
+					</view>
+					<view class="detail" v-if="item.褰撳墠宸ュ簭">
+						<text>褰撳墠宸ュ簭锛�</text>{{item.褰撳墠宸ュ簭}}
+					</view>
+					<view class="detail" v-if="item.褰撳墠宸ュ簭浠g爜">
+						<text>宸ュ簭浠g爜锛�</text>{{item.褰撳墠宸ュ簭浠g爜}}
+					</view>
+					<view class="detail" v-if="item.鏃ユ湡">
+						<text>鏃ユ湡锛�</text>{{item.鏃ユ湡.substr(0,10)}}
+					</view>
+				</view>
+				<view class="card-detail" v-if="showDetail == index">
+					<view class="detail" v-if="item.瑙勬牸鍨嬪彿">
+						<text>瑙勬牸鍨嬪彿锛�</text>{{item.瑙勬牸鍨嬪彿}}
+					</view>
+					<view class="detail" v-if="item.娴佹按鍙�">
+						<text>娴佹按鍙凤細</text>{{item.娴佹按鍙穧}
+					</view>
+					<view class="detail" v-if="item.鍑虹珯鏁伴噺">
+						<text>鍑虹珯鏁伴噺锛�</text>{{item.鍑虹珯鏁伴噺}}
+					</view>
+					<view class="detail" v-if="item.涓嶈壇鏁伴噺">
+						<text>涓嶈壇鏁伴噺锛�</text>{{item.涓嶈壇鏁伴噺}}
+					</view>
+					<view class="detail" v-if="item.鎶ュ簾鏁伴噺">
+						<text>鎶ュ簾鏁伴噺锛�</text>{{item.鎶ュ簾鏁伴噺}}
+					</view>
+					<view class="detail" v-if="item.鍖呰鏍囪瘑">
+						<text>鍖呰鏍囪瘑锛�</text>{{item.鍖呰鏍囪瘑}}
+					</view>
+					<view class="detail" v-if="item.鍖呰鏍囪瘑浠g爜">
+						<text>鍖呰鏍囪瘑浠g爜锛�</text>{{item.鍖呰鏍囪瘑浠g爜}}
+					</view>
+					<view class="detail" v-if="item.鍑虹珯鏃堕棿">
+						<text>鍑虹珯鏃堕棿锛�</text>{{item.鍑虹珯鏃堕棿.substr(0,19)}}
+					</view>
+					
+					<view class="detail" v-if="item.鎿嶄綔鍛�">
+						<text>鎿嶄綔鍛橈細</text>{{item.鎿嶄綔鍛榼}
+					</view>
+					<view class="detail" v-if="item.鎿嶄綔鍛樹唬鐮�">
+						<text>鎿嶄綔鍛樹唬鐮侊細</text>{{item.鎿嶄綔鍛樹唬鐮亇}
+					</view>
+					<view class="detail" v-if="item.鐢熶骇璧勬簮">
+						<text>鐢熶骇璧勬簮锛�</text>{{item.鐢熶骇璧勬簮}}
+					</view>
+					<view class="detail" v-if="item.鐢熶骇璧勬簮浠g爜">
+						<text>鐢熶骇璧勬簮浠g爜锛�</text>{{item.鐢熶骇璧勬簮浠g爜}}
+					</view>
+					<view class="detail" v-if="item.鐢熶骇鐝粍">
+						<text>鐢熶骇鐝粍锛�</text>{{item.鐢熶骇鐝粍}}
+					</view>
+					<view class="detail" v-if="item.鐢熶骇鐝粍浠g爜">
+						<text>鐢熶骇鐝粍浠g爜锛�</text>{{item.鐢熶骇鐝粍浠g爜}}
+					</view>
+					<view class="detail" v-if="item.LOT鏁伴噺">
+						<text>LOT鏁伴噺锛�</text>{{item.LOT鏁伴噺}}
+					</view>
+					<view class="detail" v-if="item.鍒跺崟浜�">
+						<text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+					</view>
+					<view class="detail" v-if="item.鍒跺崟鏃ユ湡">
+						<text>鍒跺崟鏃ユ湡锛�</text>{{item.鍒跺崟鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.淇敼浜�">
+						<text>淇敼浜猴細</text>{{item.淇敼浜簘}
+					</view>
+					<view class="detail" v-if="item.淇敼鏃ユ湡">
+						<text>淇敼鏃ユ湡锛�</text>{{item.淇敼鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳浜�">
+						<text>瀹℃牳浜猴細</text>{{item.瀹℃牳浜簘}
+					</view>
+					<view class="detail" v-if="item.瀹℃牳鏃ユ湡">
+						<text>瀹℃牳鏃ユ湡锛�</text>{{item.瀹℃牳鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴浜�">
+						<text>鍏抽棴浜猴細</text>{{item.鍏抽棴浜簘}
+					</view>
+					<view class="detail" v-if="item.鍏抽棴鏃ユ湡">
+						<text>鍏抽棴鏃ユ湡锛�</text>{{item.鍏抽棴鏃ユ湡.substr(0,10)}}
+					</view>
+					<view class="detail" v-if="item.澶囨敞">
+						<text>澶囨敞锛�</text>{{item.澶囨敞}}
+					</view>
+				</view>
+				
+				<view class="more" v-if="showDetail == index && operations != index">
+					<view class="part" style="border-right: 1px solid #eee;">
+						<uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+					</view>
+				</view>
+				<view class="more" v-if="showDetail != index && operations != index">
+					<view class="part" style="border-right: 1px solid #eee;">
+						<uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+					</view>
+				</view>
+				
+			</uni-card>
+		</view>
+		
+		<view class="over" v-if="listData.length == 0">鏆傛棤鏁版嵁</view>
+		<view class="over" v-if="listData.length != 0 && listData.length != showList.length">鍔犺浇涓�...</view>
+		<view class="over" v-if="listData.length != 0 && listData.length == showList.length">宸插埌搴�</view>
+	</view>
+</template>
+
+<script>
+	import { getUserInfo } from "@/utils/auth.js";
+	export default {
+	    data() {
+	        return {
+				userInfo:getUserInfo(),
+				serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
+				showmore:false,
+				
+				hform:{
+					HMonth:'',
+					HEmp:'',
+				},
+				sWhere:'',
+				listData:[],
+				showList:[],
+				showDetail:-1,
+				operations:-1,
+				
+				page:1,
+	        }
+	    },
+		onLoad() {
+			this.getList()
+			// console.log(this.userInfo,uni.getStorageSync('HUserName'))
+		},
+		onReachBottom: function() {
+			this.page++
+			setTimeout(() => {
+				this.showList = this.showList.concat(this.getPage(this.page,this.listData))
+			}, 100)
+		},
+		onPullDownRefresh: function() {
+			this.clear()
+			setTimeout(()=>{
+				uni.stopPullDownRefresh();
+			}, 1000);
+		},
+	    methods: {
+			getPage(page,list){
+				let sindex = (parseInt(page) - 1) * 20
+				let eindex = parseInt(page) * 20
+				let newList = list.slice(sindex,eindex)
+				return newList
+			},
+			getList(){
+				this.sWhere += ` and 鍒跺崟浜� like N'%${this.userInfo.Czymc}'`
+				uni.showLoading({
+					title:'鍔犺浇涓�...'
+				})
+				uni.request({
+				    url: this.serverUrl + '/Cj_StationOutBill/get_Display',
+					data:{ 
+						sWhere: this.sWhere,
+						user: uni.getStorageSync('HUserName'),
+						HBillSubType:'',
+					},
+				    success: (res) => {
+						// console.log(1,res.data.data);
+						if(res.data.count == 1){
+							this.listData = res.data.data
+							this.showList = this.getPage(this.page,this.listData)
+							setTimeout(()=>{
+							     uni.hideLoading()
+							}, 1000)
+						}else{
+							uni.hideLoading()
+							uni.showToast({
+								title:res.data.Message,
+								icon:'none'
+							})
+						}
+					},
+					fail: (res) => {
+						console.log(res);
+						uni.hideLoading()
+						uni.showToast({
+							title:'鎺ュ彛璇锋眰澶辫触',
+							icon:'none'
+						})
+					},
+				});
+				this.sWhere = ``
+			},
+			//鎼滅储
+			search(){
+				this.sWhere = ''
+				this.listData = []
+				this.page = 1
+				this.showList = []
+				
+				console.log(this.hform)
+
+				if (this.hform.HStatus) {
+				    if(this.hform.HStatus == '鍏ㄩ儴'){
+				    	this.sWhere += "";
+				    }else if(this.hform.HStatus == '鏈鏍�'){
+				    	this.sWhere += " and 瀹℃牳浜�=''";
+				    }else if(this.hform.HStatus == '宸插鏍�'){
+				    	this.sWhere += " and 瀹℃牳浜�<>''";
+				    }else if(this.hform.HStatus == '宸插叧闂�'){
+				    	this.sWhere += " and 鍏抽棴浜�<>''";
+				    }
+				}
+				if (this.hform.HBeginDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鍑虹珯鏃堕棿, 23) >= '" + this.hform.HBeginDate + "'";
+				}
+				if (this.hform.HEndDate) {
+				    this.sWhere += " and CONVERT(varchar(100),鍑虹珯鏃堕棿, 23) >= '" + this.hform.HEndDate + "'";
+				}
+				if (this.hform.HBillNo) {
+				    this.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+				}
+				if (this.hform.HNumber) {
+				    this.sWhere += " and 浜у搧浠g爜 like '%" + this.hform.HNumber + "%'";
+				}
+				if (this.hform.HName) {
+				    this.sWhere += " and 褰撳墠宸ュ簭 like '%" + this.hform.HName + "%'";
+				}
+				if (this.hform.HWorkBillNo) {
+				    this.sWhere += " and 浠诲姟鍗� like '%" + this.hform.HWorkBillNo + "%'";
+				}
+				if (this.hform.HProcExchBillNo) {
+				    this.sWhere += " and 宸ュ簭娴佽浆鍗″彿 like '%" + this.hform.HProcExchBillNo + "%'";
+				}
+				if (this.hform.checkHWasterQty) {
+				    this.sWhere +=  "  and 鎶ュ簾鏁伴噺>0 ";
+				}
+				if (this.hform.ColName && this.hform.Comparator) {
+				    var com = "";
+					if(this.hform.Comparator == '鍖呭惈'){
+						com = "like'%" + this.hform.ColContent + "%'";
+					}else if(this.hform.Comparator == '宸﹀寘鍚�'){
+						com = "like'%" + this.hform.ColContent + "'";
+					}else if(this.hform.Comparator == '鍙冲寘鍚�'){
+						com = "like'" + this.hform.ColContent + "%'";
+					}else if(this.hform.Comparator == '涓嶅寘鍚�'){
+						com = "not like'%" + this.hform.ColContent + "%'";
+					}else{
+						com = "" + this.hform.Comparator + "'" + this.hform.ColContent + "'";
+					}
+					
+					this.sWhere += " and " + this.hform.ColName + " " + com;
+				}
+				
+				this.getList()
+			},
+			//鏂板
+			creat(){
+				uni.navigateTo({
+					url:'/pages/gongxuOut/form'
+				})
+			},
+			//閲嶇疆
+			clear(){
+				this.listData = []
+				this.page = 1
+				this.showList = []
+				
+				this.showmore = false
+				this.sWhere = ''
+				this.showDetail = -1,
+				this.operations = -1,
+				this.hform = {
+					HStatus:'鍏ㄩ儴',
+					HBeginDate:'',
+					HEndDate:'',
+					HWorkBillNo:'',
+					HBillNo:'',
+					HProcExchBillNo:'',
+					HNumber:'',
+					HName:'',
+					checkHWasterQty:'',
+					
+					ColName:'',
+					Comparator:'',
+					ColContent:'',
+				}
+				this.getList()
+			},
+			
+	    }
+	}
+</script>
+
+<style lang="scss" scoped>
+	.form{
+		width: 640rpx;
+		margin: 20rpx auto;
+	}
+	picker input{
+		pointer-events: none;
+	}
+	.other{
+		margin-top: 8rpx;
+		text-align: center;
+		font-size: 28rpx;
+		padding: 4rpx 18rpx;
+		color: #1890FF;
+	}
+    .form-item{
+		display: flex;
+		align-items: center;
+		font-size: 28rpx;
+		padding: 6rpx 0;
+		.title{
+			width: 180rpx;
+			text{
+				color: red;
+				font-weight: bold;
+			}
+		}
+		.choose{
+			padding: 4rpx 16rpx 0 0;
+			width: 100%;
+			text-align: right;
+		}
+		.left{
+			width: 170rpx;
+			padding: 10rpx 0;
+			margin-right: 10rpx;
+			border: 1px solid #acacac;
+			border-radius: 22rpx;
+			color: #888;
+			text-align: center;
+		}
+		.right{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #acacac;
+		}
+		.righton{
+			width: 450rpx;
+			border-radius: 22rpx;
+			border: 1px solid #e4e4e4;
+			background-color: #e4e4e4;
+		}
+		input{
+			width: 100%;
+			padding: 8rpx 20rpx;
+			font-size: 30rpx;
+		}
+	}
+	.buttons{
+		width: 100%;
+		display: flex;
+		justify-content: center;
+		margin-top: 20rpx;
+		button{
+			border-radius: 50rpx;
+			width: 180rpx;
+			height: 66rpx;
+			line-height: 66rpx;
+			font-size: 28rpx;
+		}
+		.btn-a{
+			background-color: #acacac;
+			color: #fff;
+		}
+		.btn-b{
+			background-color: #41a863;
+			color: #fff;
+		}
+		.btn-c{
+			background-color: #3a78ff;
+			color: #fff;
+		}
+	}
+	
+	.list{
+		width: 100%;
+		.card-detail{
+			width: 100%;
+			display: flex;
+			flex-wrap: wrap;
+			justify-content: space-between;
+			line-height: 120%;
+			.detail{
+				// width: 50%;
+				font-size: 26rpx;
+				margin-bottom: 12rpx;
+				color: #555;
+				margin-right: 20rpx;
+				text{
+					color: #999;
+					font-size: 26rpx;
+				}
+			}
+		}
+		.more{
+			color: #888;
+			font-size: 24rpx;
+			display: flex;
+			border-top: 1px solid #eee;
+			padding-top: 20rpx;
+			.part{
+				width: 50%;
+				text-align: center;
+			}
+		}
+		.op{
+			display: flex;
+			justify-content: space-around;
+			margin-top: 20rpx;
+			button{
+				padding: 0;
+				width: 150rpx;
+				font-size: 25rpx;
+			}
+			.op1{
+				border: 1px solid #41a863;
+				color: #41a863;
+			}
+			.op2{
+				border: 1px solid #d98d00;
+				color: #d98d00;
+			}
+			.op3{
+				border: 1px solid #3a78ff;
+				color: #3a78ff;
+			}
+			.op4{
+				border: 1px solid #da0000;
+				color: #da0000;
+			}
+			.op5{
+				border: 1px solid #888;
+				color: #888;
+			}
+		}
+	}
+
+</style>

--
Gitblit v1.9.1