addGoods.vue 5.1 KB
<template>
	<view class="add_goods">
		<u--form :model="form" ref="uForm" labelWidth="70" :labelStyle="{fontSize: '28rpx', color: '#3d3d3d', marginLeft: '10rpx'}">
			<!-- 基础信息 -->
			<view class="card">
				<view class="title_common">基础信息</view>
				<u-form-item label="商品名称" prop="name" :required="true">
					<u-input v-model="form.name" border="none" placeholder="请输入商品名称" :placeholderStyle="{fontSize: '28rpx'}" />
				</u-form-item>
				<u-form-item label="商品主图" prop="mainCover" labelPosition="top" labelWidth="180" :required="true">
					<view class="m-top10">
						<u-upload
							:fileList="mainCoverList"
							@afterRead="afterRead"
							@delete="deletePic"
							name="mainCover"
							multiple
							:maxCount="1"
						/>
					</view>
				</u-form-item>
				<u-form-item label="商品详情页图" prop="detailImg" labelPosition="top" labelWidth="180" :required="true">
					<view class="m-top10">
						<u-upload
							:fileList="detailList"
							@afterRead="afterRead"
							@delete="deletePic"
							name="detail"
							multiple
							:maxCount="10"
						/>
					</view>
				</u-form-item>
			</view>
			<!-- 售卖信息 -->
			<view class="card m-top20">
				<view class="title_common">售卖信息</view>
				<view class="saleList">
					<view class="infoCard">
							<u-form-item label="规格" prop="format" :required="true">
								<u-input v-model="form.format" placeholder="请输入商品规格" border="bottom" />
							</u-form-item>
							<u-form-item label="价格" prop="price" :required="true">
								<u-input v-model="form.price" placeholder="请输入商品价格" border="bottom" />
							</u-form-item>
							<u-form-item label="商品分类" prop="goods_sore" :required="true">
								<u-input v-model="form.goods_sore" placeholder="请输入商品分类" border="bottom" />
							</u-form-item>
							<u-form-item label="库存" prop="inventory" :required="true">
								<u-input v-model="form.inventory" placeholder="请输入商品库存" border="bottom" />
							</u-form-item>
							<u-form-item label="库存提醒" prop="inv_number" :required="true">
								<u-input v-model="form.inv_number" placeholder="请输入库存提醒" border="bottom" />
							</u-form-item>
						</view>
						<u-divider text="规格" :dot="true"></u-divider>
						<view class="infoCard">
							<u-form-item label="规格" prop="format" :required="true">
								<u-input v-model="form.format" placeholder="请输入商品规格" border="bottom" />
							</u-form-item>
							<u-form-item label="价格" prop="price" :required="true">
								<u-input v-model="form.price" placeholder="请输入商品价格" border="bottom" />
							</u-form-item>
							<u-form-item label="商品分类" prop="goods_sore" :required="true">
								<u-input v-model="form.goods_sore" placeholder="请输入商品分类" border="bottom" />
							</u-form-item>
							<u-form-item label="库存" prop="inventory" :required="true">
								<u-input v-model="form.inventory" placeholder="请输入商品库存" border="bottom" />
							</u-form-item>
							<u-form-item label="库存提醒" prop="inv_number" :required="true">
								<u-input v-model="form.inv_number" placeholder="请输入库存提醒" border="bottom" />
							</u-form-item>
						</view>
						<view class="add_format">
							<u-button text="添加规格" color="#FFB336"></u-button>
						</view>
					</view>
				</view>
		</u--form>
	
		<view class="footer">
			<u-button shape="circle" text="新建商品" color="linear-gradient( 270deg, #FFA201 0%, #FCD722 100%)"></u-button>
		</view>
	</view>
</template>

<script>
	import upload from '@/mixins/upload.js'
	export default {
		mixins: [ upload ],
		data() {
			return {
				form: {
					name: '',
					mainCover: '',
					detailImg: [],
					saleInfo: [
						{}
					]
				},
				rules: {
					name: [
						{ required: true, message: '请输入商品名称', trigger: ['blur', 'change'] }
					],
					mainCover: [
						{ required: true, message: '请上传商品主图', trigger: ['change'] }
					],
					detailImg: [
						{ required: true, message: '请上传商品详情图片', trigger: ['blur', 'change'] }
					],
					format: [
						{ required: true, message: '请输入商品规格', trigger: ['blur', 'change'] }
					],
					price: [
						{ required: true, message: '请上传商品价格', trigger: ['blur', 'change'] }
					],
					'goods_sore': [
						{ required: true, message: '请选择商品分类', trigger: ['change'] }
					],
					inventory: [
						{ required: true, message: '请输入商品库存', trigger: ['blur', 'change'] }
					],
					inv_number: [
						{ required: true, message: '请输入库存预警数', trigger: ['blur', 'change'] }
					]
				}
			}
		}
	}
</script>

<style lang="scss" scoped>
.add_goods{
	padding: 20rpx 30rpx;
	background-color: #F6F6F6;
	padding-bottom: 150rpx;
}
.footer{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 24rpx 30rpx;
	z-index: 99;
	background-color: #F6F6F6;
}
.card {
	background-color: #fff;
	padding: 20rpx 36rpx;
	border-radius: 20rpx;
}
</style>