dedsudiyu 3 weeks ago
parent
commit
30374b5c50

+ 49 - 0
pages.json

@@ -1178,6 +1178,55 @@
 					}
 				}
 			]
+		},
+		{
+			/* 气瓶供应商 */
+			"root": "pages_supplierCylinderManagement", //分包根路径
+			"name": "supplierCylinderManagement", //分包名字可写可不写
+			"pages": [
+				{
+					"path": "views/gasCylinderManagement/index",
+					"style": {
+						"navigationBarTitleText": "气瓶管理"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/inbound",
+					"style": {
+						"navigationBarTitleText": "气瓶入库"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/outbound",
+					"style": {
+						"navigationBarTitleText": "气瓶出库"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/historyRecord",
+					"style": {
+						"navigationBarTitleText": "历史记录"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/cylinderDetails",
+					"style": {
+						"navigationBarTitleText": "气瓶详情"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/selectCylinder",
+					"style": {
+						"navigationBarTitleText": "选择气瓶"
+					}
+				},
+				{
+					"path": "views/gasCylinderManagement/selectLab",
+					"style": {
+						"navigationBarTitleText": "选择实验室"
+					}
+				}
+			]
 		}
 
 	],

+ 7 - 2
pages/views/home/home.vue

@@ -1,7 +1,8 @@
 <template>
 	<view id="home">
-		<teacherHome class="flex-box-page" v-if="userType==1"></teacherHome>
-		<pupilHome class="flex-box-page" v-if="userType==2"></pupilHome>
+		<!-- <teacherHome class="flex-box-page" v-if="userType==1"></teacherHome> -->
+		<!-- <pupilHome class="flex-box-page" v-if="userType==2"></pupilHome> -->
+		<supplierHome class="flex-box-page"></supplierHome>
 	</view>
 </template>
 <script>
@@ -14,6 +15,9 @@
 	import {
 		pupilHome
 	} from '@/pages/views/pupilPage/pupilHome'
+	import {
+		supplierHome
+	} from '@/pages/views/supplierCylinderManagement/home'
 	export default {
 		onShareAppMessage(res) {
 			return {
@@ -25,6 +29,7 @@
 		components: {
 			teacherHome,
 			pupilHome,
+			supplierHome,
 		},
 		data() {
 			return {

+ 9 - 2
pages/views/mine/mine.vue

@@ -1,8 +1,9 @@
 <!-- 我的 -->
 <template>
 	<view id="mine">
-		<teacherMine class="flex-box-page" ref="teacherMine" v-if="userType==1"></teacherMine>
-		<pupilMine class="flex-box-page" ref="pupilMine" v-if="userType==2"></pupilMine>
+		<!-- <teacherMine class="flex-box-page" ref="teacherMine" v-if="userType==1"></teacherMine> -->
+		<!-- <pupilMine class="flex-box-page" ref="pupilMine" v-if="userType==2"></pupilMine> -->
+		<supplierMine class="flex-box-page" ref="supplierMine"></supplierMine>
 	</view>
 </template>
 
@@ -13,6 +14,9 @@
 	import {
 		pupilMine
 	} from '@/pages/views/pupilPage/pupilMine'
+	import {
+		supplierMine
+	} from '@/pages/views/supplierCylinderManagement/mine'
 	
 	export default {
 		onShareAppMessage(res) {
@@ -24,6 +28,7 @@
 		components: {
 			teacherMine,
 			pupilMine,
+			supplierMine,
 		},
 		
 		data() {
@@ -41,6 +46,8 @@
 					this.$refs.teacherMine.initialize();
 				}else if(this.userType == 2){
 					this.$refs.pupilMine.initialize();
+				}else{
+					this.$refs.supplierMine.initialize();
 				}
 			})
 		},

+ 306 - 0
pages/views/supplierCylinderManagement/home.vue

@@ -0,0 +1,306 @@
+<!-- 气瓶供应商首页 -->
+<template>
+	<view class="supplierCylinderManagement-home">
+		<view class="home-page">
+			<nav-bar :title="title" :background="background"></nav-bar>
+			<view class="top-back-img" :style="{top:navHeight+'rpx'}">
+				<img class="position-img" :src="rectangleLogo">
+			</view>
+			<view class="button-one-box">
+				<view class="button-min" @click="goPage()" style="margin:23rpx 0 0 20rpx;">
+					<img class="button-img" :src="imagesUrl('home/icon_sy_aqks@1x.png')">
+					<view class="button-name">气瓶管理</view>
+				</view>
+			</view>
+			<tab-bar></tab-bar>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		pageRestrictVerify
+	} from '@/utils/index'
+	import {
+		chemicalAppletSelectStockInfo,
+		laboratorySubPassOutIsotopeSubSign,
+		systemUserProfile,
+		systemUserGetPost,
+		hwmsAppRegisterApprovalIsPermit,
+	} from '@/pages/api/index.js'
+	import {
+		navBar
+	} from '@/pages/component/navbar.vue'
+	import {
+		tabBar
+	} from '@/pages/views/supplierCylinderManagement/tabBar.vue'
+	export default {
+		name: "supplierCylinderManagement-home",
+		components: {
+			navBar,
+			tabBar,
+		},
+		data() {
+			return {
+				pageType: 2,
+				navHeight: uni.getStorageSync('navHeight'),
+				dataPageType: false,
+				title: '实验室安全智慧化管控系统',
+				background: '#0183FA',
+				rectangleLogo: uni.getStorageSync('rectangleLogo'),
+				identityData: uni.getStorageSync('identityData'),
+			}
+		},
+		created() {
+			
+		},
+		mounted() {
+			
+		},
+		methods: {
+			goPage(type) {
+				//气瓶管理
+				uni.navigateTo({
+					url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/index",
+				});
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	@import '@/api/request/imagesUrl.styl';
+
+	.supplierCylinderManagement-home {
+		flex: 1;
+		display: flex;
+		flex-direction: column;
+		overflow: hidden;
+
+		.data-board {
+			flex: 1;
+			display: flex;
+			flex-direction: column;
+			overflow: hidden;
+		}
+
+		.home-page {
+			flex: 1;
+			display: flex;
+			flex-direction: column;
+			overflow-y: scroll;
+			overflow-x: hidden;
+			padding-bottom: 120rpx;
+
+			.top-page-title {
+				text-align: center;
+				font-size: 28rpx;
+				background-color: #0183FA;
+				color: #fff;
+			}
+
+			.top-back-img {
+				position: absolute;
+				top: 0;
+				left: 0;
+				width: 750rpx;
+				height: 539rpx;
+				background: url($imagesUrl+'home/img_sy_bg@1x.png') no-repeat;
+				background-size: 100%;
+				background-repeat: no-repeat;
+
+				.position-img {
+					z-index: 5;
+					position: absolute;
+					left: 0;
+					top: 10rpx;
+					width: 400rpx;
+					height: 88rpx;
+				}
+
+				.position-data-button {
+					z-index: 5;
+					position: fixed;
+					right: 0;
+					top: 180rpx;
+					width: 130rpx;
+					height: 109rpx;
+					/* line-height: 50rpx;
+					background-color: #0183fa;
+					color: #fff;
+					font-size: 28rpx;
+					text-align: center;
+					border-top-left-radius: 30rpx;
+					border-bottom-left-radius: 30rpx; */
+				}
+			}
+
+			.button-one-box {
+				z-index: 5;
+				background: #fff;
+				width: 690rpx;
+				border-radius: 20rpx;
+				padding: 13px 0 20px;
+				overflow: hidden;
+				margin: 490rpx 30rpx 0;
+
+				.button-min {
+					display: inline-block;
+					overflow: hidden;
+					width: 172rpx;
+					height: 123rpx;
+					margin-top: 23rpx;
+
+					.button-img {
+						display: block;
+						width: 80rpx;
+						height: 80rpx;
+						margin: 0 auto;
+					}
+
+					.button-name {
+						margin-top: 15rpx;
+						height: 28rpx;
+						line-height: 28rpx;
+						font-size: 28rpx;
+						text-align: center;
+						color: #333;
+					}
+				}
+			}
+
+			.button-two-box {
+				z-index: 5;
+				width: 690rpx;
+				height: 120rpx;
+				display: flex;
+				margin: 20rpx 30rpx 0;
+
+				.button-big-box {
+					width: 335rpx;
+					display: flex;
+					border-radius: 20rpx;
+
+					img {
+						display: block;
+						margin: 20rpx 25rpx 0 25rpx;
+						height: 80rpx;
+						width: 80rpx;
+					}
+
+					.button-min-box {
+						view:nth-child(1) {
+							line-height: 32rpx;
+							height: 32rpx;
+							font-size: 30rpx;
+							color: #333;
+							margin: 20rpx 0 18rpx;
+						}
+
+						view:nth-child(2) {
+							line-height: 28rpx;
+							height: 28rpx;
+							font-size: 26rpx;
+							color: #999;
+						}
+					}
+				}
+			}
+
+			.button-three-box-1 {
+				z-index: 5;
+				width: 690rpx;
+				height: 130rpx;
+				margin: 20rpx 30rpx 0;
+
+				.button-big-box {
+					border-radius: 20rpx;
+					background-color: #CDE7FF;
+					display: flex;
+
+					img {
+						display: block;
+						width: 134rpx;
+						height: 104rpx;
+						margin: 23rpx 34rpx 0 30rpx;
+					}
+
+					.button-min-box {
+						view:nth-child(1) {
+							line-height: 30rpx;
+							height: 30rpx;
+							font-size: 30rpx;
+							color: #0183FA;
+							margin: 27rpx 0 15rpx;
+						}
+
+						view:nth-child(2) {
+							line-height: 26rpx;
+							height: 26rpx;
+							font-size: 26rpx;
+							color: #666666;
+						}
+					}
+				}
+			}
+
+			.button-three-box {
+				z-index: 5;
+				width: 690rpx;
+				height: 130rpx;
+				margin: 20rpx 30rpx 0;
+
+				.button-big-box-1 {
+					background: #CDE7FF;
+
+					.button-min-box {
+						view:nth-child(1) {
+							color: #0183FA;
+						}
+
+						view:nth-child(2) {
+							color: #666666;
+						}
+					}
+				}
+
+				.button-big-box {
+					height: 130rpx;
+					border-radius: 20rpx;
+					display: flex;
+
+					img {
+						display: block;
+						width: 134rpx;
+						height: 104rpx;
+						margin: 23rpx 34rpx 0 30rpx;
+					}
+
+					.button-min-box {
+						view:nth-child(1) {
+							line-height: 30rpx;
+							height: 30rpx;
+							font-size: 30rpx;
+							margin: 30rpx 0 15rpx;
+						}
+
+						view:nth-child(2) {
+							line-height: 26rpx;
+							height: 26rpx;
+							font-size: 26rpx;
+						}
+					}
+				}
+			}
+
+			.scan_btn {
+				z-index: 10;
+				position: fixed;
+				bottom: 210rpx;
+				right: 0rpx;
+				width: 140rpx;
+				height: 140rpx;
+			}
+		}
+	}
+</style>

+ 321 - 0
pages/views/supplierCylinderManagement/mine.vue

@@ -0,0 +1,321 @@
+<template>
+	<view class="supplierCylinderManagement-mine">
+		<!-- 背景渐变色 -->
+		<view class="back-img-box"></view>
+		<!-- 信息面板 -->
+		<view class="user-info-box">
+			<view class="left-img-box">
+				<img v-if="userData.avatar" class="avatar-img" :src="baseUrl+userData.avatar">
+				<img v-else class="avatar-img" :src="imagesUrl('commonality/icon_01.png')">
+				<img class="edit-img" :src="imagesUrl('commonality/icon_wd_bj@1x.png')">
+			</view>
+			<view class="right-name-box">
+				<view class="right-name-top-box">
+					<view>{{userData.userName}}</view>
+				</view>
+				<view class="right-name-bottom-box">{{userData.deptName}}</view>
+			</view>
+		</view>
+		<view class="null-flex-p"></view>
+		<view class="out-button" @click="clickOut">退出登录</view>
+		<tab-bar></tab-bar>
+	</view>
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	import {
+		logout,
+		systemUserProfile,
+		studentinfoFacemy,
+		creditAppletGetMyPointsLogInfo,
+	} from '@/pages/api/index.js'
+
+	import {
+		pageRestrictVerify
+	} from '@/utils/index'
+	import {
+		tabBar
+	} from '@/pages/views/supplierCylinderManagement/tabBar.vue'
+	export default {
+		name: "supplierCylinderManagement-mine",
+		components: {
+			tabBar,
+		},
+		data() {
+			return {
+				baseUrl: config.base_url,
+				userData: {},
+				bonusPoints: null,
+				creditScore: null,
+				faceImg:'',
+				signatureUrl:'',
+			}
+		},
+		created() {
+		},
+		mounted() {
+		},
+		onShow(){
+		},
+		methods: {
+			initialize(){
+				this.systemUserProfile();
+			},
+			//获取个人信息
+			async systemUserProfile() {
+				const {
+					data
+				} = await systemUserProfile();
+				if (data.code == 200) {
+					this.$set(this, 'userData', data.data)
+					this.faceImg=data.data.faceImg;
+					this.signatureUrl=data.data.signature
+					uni.setStorageSync('faceImg', data.data.faceImg);
+					
+				}
+			},
+			//退出按钮
+			clickOut() {
+				let self = this;
+				uni.showModal({
+					// title: '确认要退出吗?',
+					content: '确认要退出吗',
+					cancelColor: "#999",
+					confirmColor: "#0183FA",
+					success: function(res) {
+						if (res.confirm) {
+							self.logout();
+						} else if (res.cancel) {}
+					}
+				});
+			},
+			//退出登录
+			async logout() {
+				let self = this;
+				const {
+					data
+				} = await logout();
+				if (data.code == 200) {
+					uni.removeStorageSync('token');
+					uni.removeStorageSync('userId');
+					uni.removeStorageSync('userType');
+					uni.redirectTo({
+						url: '/pages/views/login/login',
+					});
+				}
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.supplierCylinderManagement-mine {
+		flex: 1;
+		display: flex;
+		flex-direction: column;
+		overflow-y: scroll;
+		overflow-x: hidden;
+		padding-bottom:200rpx;
+
+		.back-img-box {
+			z-index: 0;
+			position: absolute;
+			top: 0;
+			left: 0;
+			width: 750rpx;
+			height: 291rpx;
+			background: linear-gradient(180deg, rgba(1, 131, 250, 1) 0%, rgba(255, 255, 255, 0) 100%);
+		}
+
+		.user-info-box {
+			z-index: 10;
+			margin: 39rpx 24rpx 0;
+			display: flex;
+
+			.left-img-box {
+				width: 132rpx;
+				height: 132rpx;
+				position: relative;
+				margin-right: 22rpx;
+
+				.avatar-img {
+					position: absolute;
+					top: 6rpx;
+					left: 6rpx;
+					width: 116rpx;
+					height: 116rpx;
+					border-radius: 50%;
+					border: 2rpx solid #fff;
+				}
+
+				.edit-img {
+					z-index: 5;
+					position: absolute;
+					right: 0;
+					bottom: 6rpx;
+					width: 40rpx;
+					height: 40rpx;
+				}
+			}
+
+			.right-name-box {
+				padding-top: 6rpx;
+
+				.right-name-top-box {
+					display: flex;
+
+					view:nth-child(1) {
+						height: 68rpx;
+						line-height: 62rpx;
+						font-size: 32rpx;
+						color: #fff;
+					}
+
+					view:nth-child(2) {
+						margin-top: 14rpx;
+						margin-left: 30rpx;
+						width: 120rpx;
+						height: 40rpx;
+						line-height: 40rpx;
+						background: #FF8C00;
+						border-radius: 50rpx;
+						font-size: 24rpx;
+						color: #fff;
+						text-align: center;
+					}
+				}
+
+				.right-name-bottom-box {
+					height: 50rpx;
+					line-height: 50rpx;
+					font-size: 28rpx;
+					color: #fff;
+				}
+			}
+		}
+
+		.points-max-box {
+			z-index: 10;
+			width: 690rpx;
+			height: 160rpx;
+			background: #FFFFFF;
+			border-radius: 20rpx;
+			margin: 38rpx 30rpx 0;
+			display: flex;
+
+			.points-big-box {
+				flex: 1;
+
+				.num-p {
+					margin: 39rpx 0 19rpx 0;
+					text-align: center;
+					font-size: 28rpx;
+					line-height: 39rpx;
+				}
+
+				.img-box {
+					display: flex;
+
+					img {
+						width: 30rpx;
+						height: 30rpx;
+						display: block;
+						margin: 0 20rpx 0 42rpx;
+					}
+
+					view {
+						color: #333333;
+						line-height: 30rpx;
+						font-size: 28rpx;
+					}
+				}
+
+				.colorA {
+					color: #0183FA;
+				}
+
+				.colorB {
+					color: #26C736;
+				}
+
+				.colorC {
+					color: #333333;
+				}
+			}
+
+			.border-null-p {
+				width: 1rpx;
+				height: 40rpx;
+				margin: 60rpx 0 0;
+				background-color: #e0e0e0;
+			}
+		}
+
+		.button-max-big-box {
+			background-color: #fff;
+			border-radius: 20rpx;
+			margin: 20rpx 30rpx 0;
+
+			.button-big-box:nth-child(1) {
+				border-top: none;
+			}
+
+			.button-big-box {
+				border-top: 1px solid #E0E0E0;
+				display: flex;
+				padding: 0 30rpx 0 26rpx;
+
+				.left-img {
+					display: block;
+					width: 36rpx;
+					height: 36rpx;
+					margin-top: 25rpx;
+					margin-right: 21rpx;
+				}
+
+				.left-text-p {
+					flex: 1;
+					front-size: 30rpx;
+					line-height: 40rpx;
+					margin: 20rpx 0;
+				}
+
+				.right-text-p {
+					front-size: 30rpx;
+					line-height: 40rpx;
+					margin: 20rpx 0;
+				}
+
+				.right-img {
+					display: block;
+					width: 30rpx;
+					height: 30rpx;
+					margin-top: 28rpx;
+				}
+			}
+			.color-D{
+				color:#0183FA!important;
+			}
+		}
+		.null-flex-p{
+			flex:1;
+		}
+		.out-button {
+			// position absolute;
+			// bottom: 140rpx;
+			// left: 75rpx;
+			margin:20rpx 0 20rpx 75rpx;
+			width: 600rpx;
+			height: 80rpx;
+			line-height: 80rpx;
+			border-radius: 100rpx;
+			text-align center;
+			background #0183FA;
+			color: #ffffff;
+			font-size: 30rpx;
+		}
+	}
+</style>

+ 121 - 0
pages/views/supplierCylinderManagement/tabBar.vue

@@ -0,0 +1,121 @@
+<!-- 底部导航组件 -->
+<template>
+	<view class="tabBar" :style="{'padding-bottom': paddingBottomHeight + 'rpx'}">
+		<view class="tab-bar-box">
+			<view class="null-box"></view>
+			<view class="tba-bar-min-box" @click="tabBarGoPage(1)">
+				<img :src="imagesUrl('commonality/icon_sy_xz@1x.png')" v-if="currentRoute == 'pages/views/home/home'">
+				<img :src="imagesUrl('commonality/icon_sy_zc@1x.png')" v-else>
+				<view :class="currentRoute == 'pages/home'?'primary':''">首页</view>
+			</view>
+			<view class="null-box"></view>
+			<view class="tba-bar-min-box" @click="tabBarGoPage(2)">
+				<img :src="imagesUrl('commonality/icon_wd_xz@1x.png')" v-if="currentRoute == 'pages/views/mine/mine'">
+				<img :src="imagesUrl('commonality/icon_wd_zc@1x.png')" v-else>
+				<view :class="currentRoute == 'pages/mine'?'primary':''">我的</view>
+			</view>
+			<view class="null-box"></view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		name: 'tabBar',
+		data() {
+			return {
+				paddingBottomHeight: 0, //苹果X以上手机底部适配高度
+				currentRoute: "",
+			}
+		},
+		created() {
+			let that = this;
+			uni.getSystemInfo({
+				success: function(res) {
+					let model = ['X', 'XR', 'XS', '11', '12', '13', '14', '15'];
+					model.forEach(item => {
+						//适配iphoneX以上的底部,给tabbar一定高度的padding-bottom
+						if (res.model.indexOf(item) != -1 && res.model.indexOf('iPhone') != -1) {
+							that.paddingBottomHeight = 40;
+						}
+					})
+				}
+			});
+		},
+		onShow() {
+			
+		},
+		mounted() {
+			// 获取当前路由
+			let pages = getCurrentPages();
+			let page = pages[pages.length - 1];
+			this.currentRoute = page.route;
+		},
+		methods: {
+			tabBarGoPage(type) {
+				if (type === 1) {
+					if (this.currentRoute !== 'pages/views/home/home') {
+						uni.redirectTo({
+							url: '/pages/views/home/home',
+						});
+					}
+				} else if (type === 2) {
+					if (this.currentRoute !== 'pages/views/mine/mine') {
+						uni.redirectTo({
+							url: '/pages/views/mine/mine',
+						});
+					}
+				}
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	.tabBar {
+		z-index: 9999;
+		width: 100%;
+		height: 98rpx;
+		background: #ffffff;
+		position fixed ;
+		bottom: 0;
+		left: 0;
+		box-shadow: 0 -3rpx 13rpx 0 rgba(0, 0, 0, 0.1);
+		.tab-bar-box {
+			display flex;
+
+			.null-box {
+				flex: 1;
+			}
+
+			.tba-bar-min-box {
+				width: 64rpx;
+				position: relative;
+
+				img {
+					width: 42rpx;
+					height: 42rpx;
+					margin: 15rpx auto 0;
+				}
+
+				view {
+					line-height: 37rpx;
+					font-size: 19rpx;
+					text-align center;
+					color: #666666;
+				}
+
+				.tips-box {
+					position: absolute;
+					top: 10rpx;
+					left: 44rpx;
+					display inline-block;
+					background: #fa5151;
+					border-radius 50%;
+					width:20rpx;
+					height:20rpx;
+				}
+			}
+		}
+	}
+</style>

+ 36 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/cylinderDetails.vue

@@ -0,0 +1,36 @@
+<!-- 气瓶详情 -->
+<template>
+	<view id="gasCylinderDetails">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(option) {
+			
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderDetails {
+		height: 100%;
+		width: 100%;
+		display flex ;
+		flex-direction column;
+		overflow: hidden;
+	}
+</style>

+ 36 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/historyRecord.vue

@@ -0,0 +1,36 @@
+<!-- 历史记录 -->
+<template>
+	<view id="gasCylinderHistoryRecord">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(option) {
+			
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderHistoryRecord {
+		height: 100%;
+		width: 100%;
+		display flex ;
+		flex-direction column;
+		overflow: hidden;
+	}
+</style>

+ 373 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/inbound.vue

@@ -0,0 +1,373 @@
+<!-- 气瓶入库 -->
+<template>
+	<view id="gasCylinderInbound">
+		<view class="gasCylinderInbound-page">
+			<view class="content-max-box">
+				<view class="content-big-box">
+					<view class="content-title-p">气瓶信息</view>
+					<view class="content-min-box">
+						<view class="content-check-box" @click="checkButton(1)">
+							<view>选择气瓶</view>
+							<view>{{newData.newData1?'更改':'请选择'}}</view>
+							<uni-icons class="right-icon" type="right"></uni-icons>
+						</view>
+						<view class="content-bottom-text-box" v-if="newData.newData1">
+							<view class="content-text-box">
+								<view>气瓶编码:</view>
+								<view>{{newData.newData2}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>气体:</view>
+								<view>{{newData.newData3}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>气瓶规格:</view>
+								<view>{{newData.newData4}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>气体类别:</view>
+								<view>{{newData.newData5}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>压力:</view>
+								<view>{{newData.newData6}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>纯度:</view>
+								<view>{{newData.newData7}}</view>
+							</view>
+						</view>
+					</view>
+				</view>
+				<view class="content-big-box">
+					<view class="content-title-p">实验室信息</view>
+					<view class="content-min-box">
+						<view class="content-check-box" @click="checkButton(2)">
+							<view>选择气瓶</view>
+							<view>{{newData.newData8?'更改':'请选择'}}</view>
+							<uni-icons class="right-icon" type="right"></uni-icons>
+						</view>
+						<view class="content-bottom-text-box" v-if="newData.newData8">
+							<view class="content-text-box">
+								<view>实验室名称:</view>
+								<view>{{newData.newData9}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>楼栋:</view>
+								<view>{{newData.newData10}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>楼层:</view>
+								<view>{{newData.newData11}}</view>
+							</view>
+							<view class="content-text-box">
+								<view>房间:</view>
+								<view>{{newData.newData12}}</view>
+							</view>
+						</view>
+					</view>
+				</view>
+				<view class="content-max-input-box">
+					<view class="name-box">签收人</view>
+					<input class="uni-input input-box" v-model="newData.newData13" maxlength="20" placeholder="请输入" />
+				</view>
+				<view class="content-max-input-box">
+					<view class="name-box">费用</view>
+					<input class="uni-input input-box" v-model="newData.newData14" type="number" maxlength="10"
+						placeholder="请输入" />
+				</view>
+				<view class="content-max-up-box">
+					<view class="name-box">入库单</view>
+					<view class="up-big-box">
+						<img class="img-data" v-if="newData.newData15" @click="previewSingleImage(baseUrl+newData.newData15)"
+							:src="baseUrl+newData.newData15">
+						<view class="add-button" @click="selectImage()">
+							<uni-icons type="cloud-upload" size="30" color="#666"></uni-icons>
+							<view>上传照片</view>
+						</view>
+					</view>
+				</view>
+				<view class="content-max-up-box">
+					<view class="name-box">备注</view>
+					<textarea class="textarea textarea-box" placeholder="请输入" maxlength="100"
+						v-model="newData.newData16"></textarea>
+				</view>
+			</view>
+			<view class="bottom-button-p">确认入库</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		config
+	} from '@/api/request/config.js'
+	export default {
+		data() {
+			return {
+				baseUrl: config.base_url,
+				newData: {
+					newData1: '',
+					newData2: '',
+					newData3: '',
+					newData4: '',
+					newData5: '',
+					newData6: '',
+					newData7: '',
+					newData8: '',
+					newData9: '',
+					newData10: '',
+					newData11: '',
+					newData12: '',
+					newData13: '',
+					newData14: '',
+					newData15: '',
+					newData16: '',
+				}
+			}
+		},
+		onLoad(option) {
+
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			checkButton(type) {
+				if (type == 1) {
+					uni.navigateTo({
+						url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/selectCylinder",
+					});
+				} else if (type == 2) {
+					uni.navigateTo({
+						url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/selectLab",
+					});
+				}
+			},
+			/******图片上传******/
+			selectImage() {
+				let self = this;
+				let photoMaxNun = 0;
+				wx.chooseImage({
+					count: photoMaxNun,
+					sizeType: ["original", "compressed"],
+					sourceType: ["album", "camera"],
+					success: function(res) {
+						if (res.tempFilePaths[0]) {
+							res.tempFilePaths.forEach(function(item, index) {
+								self.uploadImg(item);
+							})
+						}
+					}
+				});
+			},
+			async uploadImg(tempFilePaths) {
+				var self = this;
+				uni.showLoading({
+					title: '上传中',
+					mask: true
+				});
+				uni.uploadFile({
+					url: config.base_url + '/system/file/upload', //仅为示例,非真实的接口地址
+					header: {
+						'Authorization': uni.getStorageSync('token')
+					},
+					filePath: tempFilePaths,
+					name: 'file',
+					formData: {
+						'user': 'test'
+					},
+					success: (uploadFileRes) => {
+						let res = JSON.parse(uploadFileRes.data);
+						if (res.code == 200) {
+							this.$set(this.newData, 'newData15', res.data.url);
+						} else {
+							uni.showToast({
+								title: res.msg,
+								icon: "none",
+								mask: true,
+								duration: 2000
+							});
+						}
+					},
+					fail: err => {},
+					complete: () => {
+						uni.hideLoading()
+					}
+				});
+			},
+			//预览图片
+			previewSingleImage(imageUrl) {
+				uni.previewImage({
+					urls: [imageUrl] // 必须包裹成数组
+				});
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderInbound {
+		height: 100%;
+		width: 100%;
+		display flex;
+		flex-direction column;
+		overflow: hidden;
+
+		.gasCylinderInbound-page {
+			flex: 1;
+			display flex;
+			flex-direction column;
+			overflow: hidden;
+
+			.content-max-box {
+				flex: 1;
+				display flex;
+				flex-direction column;
+				overflow-y: scroll;
+
+				.content-big-box {
+					margin: 0 30rpx 0;
+
+					.content-title-p {
+						line-height: 80rpx;
+						padding: 0 20rpx;
+						color: #666;
+					}
+
+					.content-min-box {
+						background-color: #fff;
+						border-radius: 12rpx;
+
+						.content-check-box {
+							display: flex;
+							padding: 40rpx 30rpx;
+
+							view {
+								font-size: 30rpx;
+								line-height: 40rpx;
+							}
+
+							view:nth-child(1) {
+								flex: 1;
+								font-weight: 600;
+							}
+
+							view:nth-child(2) {
+								font-size: 28rpx;
+								font-weight: 600;
+								margin-right: 10rpx;
+								color: #666;
+							}
+
+							.right-icon {
+								font-size: 30rpx;
+							}
+						}
+
+						.content-bottom-text-box {
+							border-top: 1rpx solid #dedede;
+							margin: 0 30rpx;
+							padding: 20rpx 0;
+
+							.content-text-box {
+								display: flex;
+
+								view {
+									font-size: 28rpx;
+									line-height: 60rpx;
+								}
+
+								view:nth-child(1) {}
+
+								view:nth-child(2) {
+									flex: 1;
+									text-align: right;
+								}
+							}
+						}
+					}
+				}
+			}
+
+			.content-max-input-box {
+				background-color: #fff;
+				border-radius: 12rpx;
+				display: flex;
+				margin: 30rpx 30rpx 0;
+				padding: 0 30rpx;
+
+				.name-box {
+					font-size: 30rpx;
+					font-weight: 600;
+					line-height: 100rpx;
+				}
+
+				.input-box {
+					flex: 1;
+					height: 100rpx;
+					line-height: 100rpx;
+					text-align: right;
+				}
+			}
+
+			.content-max-up-box {
+				background-color: #fff;
+				border-radius: 12rpx;
+				margin: 30rpx 30rpx 0;
+				padding: 0 30rpx;
+
+				.name-box {
+					font-size: 30rpx;
+					font-weight: 600;
+					line-height: 100rpx;
+				}
+
+				.up-big-box {
+					display: flex;
+					padding: 0 0 30rpx 0;
+
+					.img-data {
+						display: block;
+						width: 160rpx;
+						height: 160rpx;
+						border-radius: 12rpx;
+						overflow: hidden;
+						margin-right: 30rpx;
+					}
+
+					.add-button {
+						border: 1rpx solid #dedede;
+						border-radius: 12rpx;
+						width: 160rpx !important;
+						height: 130rpx;
+						text-align: center;
+						color: #666;
+						font-size: 28rpx;
+						padding-top: 30rpx;
+					}
+				}
+
+				.textarea-box {
+					width: 570rpx;
+					padding: 30rpx;
+					border: 1px solid #dedede;
+					border-radius: 12rpx;
+					margin-bottom: 30rpx;
+				}
+			}
+
+			.bottom-button-p {
+				width: 700rpx;
+				height: 100rpx;
+				line-height: 100rpx;
+				text-align: center;
+				margin: 30rpx auto 60rpx;
+				color: #fff;
+				background-color: #0183FA;
+				border-radius: 16rpx;
+			}
+		}
+	}
+</style>

+ 98 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/index.vue

@@ -0,0 +1,98 @@
+<!-- 气瓶管理 -->
+<template>
+	<view id="gasCylinderManagement">
+		<view class="content-box">
+			<view class="button-box" @click="goPage(1)">
+				<img :src="imagesUrl('home/icon_sy_aqks@1x.png')">
+				<view style="color:#FF6B00;">气瓶入库</view>
+			</view>
+			<view class="button-box" @click="goPage(2)">
+				<img :src="imagesUrl('home/icon_sy_aqks@1x.png')">
+				<view style="color:#0075FF;">气瓶出库</view>
+			</view>
+		</view>
+		<view class="bottom-button-p" @click="goPage(3)">历史记录</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+
+			}
+		},
+		onLoad(option) {
+
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			goPage(type) {
+				if (type == 1) {
+					//气瓶入库
+					uni.navigateTo({
+						url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/inbound",
+					});
+				} else if (type == 2) {
+					//气瓶出库
+					uni.navigateTo({
+						url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/outbound",
+					});
+				} else if (type == 3) {
+					//历史记录
+					uni.navigateTo({
+						url: "/pages_supplierCylinderManagement/views/gasCylinderManagement/historyRecord",
+					});
+				}
+			},
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderManagement {
+		height: 100%;
+		width: 100%;
+		display flex;
+		flex-direction column;
+		overflow: hidden;
+
+		.content-box {
+			flex: 1;
+			display flex;
+			flex-direction column;
+			overflow-y: scroll;
+			.button-box{
+				background-color: #fff;
+				border-radius:8rpx;
+				overflow: hidden;
+				margin:20rpx 30rpx;
+				img{
+					width:160rpx;
+					height:160rpx;
+					display: block;
+					margin:70rpx auto 0;
+				}
+				view{
+					text-align: center;
+					font-size:32rpx;
+					line-height:100rpx;
+					margin-bottom:40rpx;
+				}
+			}
+		}
+		.bottom-button-p{
+			font-size:30rpx;
+			text-align: center;
+			width:130rpx;
+			line-height:60rpx;
+			margin:0 auto;
+			margin-bottom:100rpx;
+			border-bottom:1rpx solid #dedede;
+			color:#666;
+		}
+	}
+</style>

+ 36 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/outbound.vue

@@ -0,0 +1,36 @@
+<!-- 气瓶出库 -->
+<template>
+	<view id="gasCylinderOutbound">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(option) {
+			
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderOutbound {
+		height: 100%;
+		width: 100%;
+		display flex ;
+		flex-direction column;
+		overflow: hidden;
+	}
+</style>

+ 36 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/selectCylinder.vue

@@ -0,0 +1,36 @@
+<!-- 选择气瓶 -->
+<template>
+	<view id="gasCylinderSelectCylinder">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(option) {
+			
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderSelectCylinder {
+		height: 100%;
+		width: 100%;
+		display flex ;
+		flex-direction column;
+		overflow: hidden;
+	}
+</style>

+ 36 - 0
pages_supplierCylinderManagement/views/gasCylinderManagement/selectLab.vue

@@ -0,0 +1,36 @@
+<!-- 选择实验室 -->
+<template>
+	<view id="gasCylinderSelectLab">
+		
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				
+			}
+		},
+		onLoad(option) {
+			
+		},
+		onShow() {
+
+		},
+
+		methods: {
+			
+		}
+	}
+</script>
+
+<style lang="stylus" scoped>
+	#gasCylinderSelectLab {
+		height: 100%;
+		width: 100%;
+		display flex ;
+		flex-direction column;
+		overflow: hidden;
+	}
+</style>