<template>
	<view class="page">
		<u-navbar title="创建代理" :border-bottom="false" :background="bgc" title-color='#000' title-size='36' height='38'></u-navbar>
        <view class="box">
        	<view class="title">
        		基本信息
        	</view>
			<view class="list">
				<view class="list_val">
					<view class="" style="padding-top:12rpx">代理级别</view> <input type="text" v-model="level" disabled="false" :placeholder="agentLevel + 1 + '级代理'" />
				</view>
				<view class="list_val">
					<view class="" style="padding-top:12rpx">代理名称</view> <input type="text" v-model="name" placeholder="请输入代理名称" />
				</view>
				<view class="list_val">
					<view class="" style="padding-top:12rpx">分成比例</view> <input type="text" v-model="ratio" placeholder="请输入分成比例  %" />
				</view>
				<view class="list_val">
					<view class="" style="padding-top:12rpx">手机号码</view> <input type="text" v-model="tel" placeholder="请输入手机号码" />
				</view>
				<view class="list_val">
					<view class="" style="padding-top:12rpx;margin-right: 88rpx;">省市区</view> <input @click="show = true" type="text" disabled="false" v-model="sheng" :placeholder="sheng" />
					<u-picker v-model="show" mode="region" @confirm="confirm"></u-picker>
				</view>
			</view>
			<view class="title">
				商户权限
			</view>
			<view class="swlist">
				<view class="swlist_val" v-for="(item,index) in list" :key="index">
					<view class="lt">
						<view class="one">
							{{item.name}}
						</view>
						<view class="two">
							{{item.tit}}
						</view>
					</view>
					<view class="rt">
						<u-switch v-model="item.checked" @change="change" active-color="#19CD82 " size="36" inactive-color="#eee"></u-switch>
					</view>
				</view>
				
			</view>
			<view class="baocun" @click="btncj">
				保存
			</view>
        </view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				list:[
					{name:'允许登录',tit:'代理登录系统',checked:false},
					{name:'允许提现',tit:'代理钱包余额提现',checked:false},
					{name:'展示分成比例',tit:'是否展示分成比例',checked:false},
					{name:'代理操作',tit:'是否展示操作代理',checked:false},
					{name:'设备显示',tit:'是否允许设备显示',checked:false},
					{name:'设备操作',tit:'是否展示设备操作',checked:false},
					{name:'店铺操作',tit:'是否展示店铺操作',checked:false},
					{name:'订单管理',tit:'是否允许查看订单',checked:false}
				], 
				show:false,
				bgc: {
					backgroundColor: " #25CE88",
				},
				level:'',
				name:'',
				ratio:'',
				tel:'',
				sheng:'请选择省市区',
				arr:[],
				arrqx:[],
				agentLevel:''
			}
		},
		onLoad() {
			this.agentLevel = uni.getStorageSync('userdata').agentLevel
		},
		methods: {
            confirm(e){
				this.arr = []
				this.sheng = e.province.label + '/' + e.city.label + "/" + e.area.label
				this.arr.push(e.province.label)
				this.arr.push(e.city.label)
				this.arr.push(e.area.label)
			},
			change(e){
				console.log(this.list)
				
			},
			
			btncj(){
				if(this.name == '' || this.name == '请输入代理名称'){
					uni.showToast({
						title: '请输入代理名称',
						icon: 'none',
						duration: 1000
					})
				}else if(this.ratio == '' || this.ratio == '请输入分成比例  %'){
					uni.showToast({
						title: '请输入分成比例  %',
						icon: 'none',
						duration: 1000
					})
				}else if(this.tel == '' || this.tel == '请输入手机号码'){
					uni.showToast({
						title: '请输入手机号码',
						icon: 'none',
						duration: 1000
					})
				}else if(this.sheng == '请选择省市区'){
					uni.showToast({
						title: '请选择省市区',
						icon: 'none',
						duration: 1000
					})
				}else{
					this.arrqx = []
					let mapping = {  
					    '允许登录': 'agent:login',  
					    '允许提现': 'agent:withdraw',  
					    '展示分成比例': 'agent:point:show',  
					    '代理操作': 'agent:operation',  
					    '设备显示': 'agent:device:show',  
					    '设备操作': 'agent:device:operation',  
					    '店铺操作': 'agent:store:operation',  
					    '订单管理': 'agent:order:manage'  
					};  
					this.list.forEach((item) => {  
					    if (item.checked && mapping.hasOwnProperty(item.name)) {  
					        this.arrqx.push(mapping[item.name]);  
					    }  
					})
					
					let data = {
						name:this.name,
						point:this.ratio,
						mobile:this.tel,
						area:this.arr, 
						permissions:this.arrqx
					}
					this.$u.post('/agent/agent',data).then(res => {
						if (res.code == 200) {
							uni.showToast({
								title: '创建成功',
								icon: 'success',
								duration: 1000
							})
							setTimeout(()=>{
								uni.navigateBack()
							},1500)
						}else if(res.msg == '请输入正确的手机号'){
							uni.showToast({
								title: '请输入正确的手机号',
								icon: 'none',
								duration: 1000
							})
						}else if(res.msg == '该手机号所绑定的用户已经是代理商,请勿重复绑定'){
							uni.showToast({
								title: '该手机号所绑定的用户已经是代理商,请勿重复绑定',
								icon: 'none',
								duration: 1000
							})
						}else if(res.msg == '分成比例不允许超过上级代理,最高:90.00'){
							uni.showToast({
								title: '分成比例不允许超过上级代理,最高:90.00',
								icon: 'none',
								duration: 1000
							})
						} else if(res.code == 500){
							uni.showToast({
								title: '分成比例必须为数字',
								icon: 'none',
								duration: 1000
							})
						}
					})
					
				}
			}
		}
	}
</script>

<style lang="scss">
	page {
		// background: linear-gradient(180deg, #25CE88 0%, rgba(255, 255, 255, 0) 100%);
	}

	.page {
		width: 750rpx;
		// position: fixed;
		// top: 0;
		// left: 0;
		.box{
			width: 750rpx;
			height: 100%;
			overflow-y:scroll;
			background: #F4F5F7;
			border-radius: 0rpx 0rpx 0rpx 0rpx;
			padding: 32rpx 36rpx; 
			box-sizing: border-box;
			padding-bottom: 100rpx;
			.baocun{
				width: 584rpx; 
				height: 90rpx;
				margin: auto;
				background: linear-gradient( 270deg, #54DAA1 0%, #19CD82 100%);
				border-radius: 54rpx 54rpx 54rpx 54rpx;
				margin-top: 62rpx;
				margin-bottom: 78rpx;
				font-weight: 500;
				font-size: 40rpx;
				color: #FFFFFF;
				text-align: center;
				line-height: 90rpx;
			}
			.swlist{
				margin-top: 34rpx;
				display: flex;
				justify-content: space-between;
				 flex-wrap: wrap;
				.swlist_val{
					display: flex;
					justify-content: space-between;
                    width: 324rpx;
                    height: 144rpx;
                    background: #FFFFFF;
                    border-radius: 24rpx 24rpx 24rpx 24rpx;		
					padding-top: 28rpx;
					padding-left: 38rpx;
					box-sizing: border-box;
					margin-top: 18rpx;
				}
				.lt{
					.one{
						font-size: 28rpx;
						color: #3D3D3D;
					}
					.two{
						font-size: 24rpx;
						color: #808080;
						margin-top: 12rpx;
					}
				}
				.rt{
					margin-top: 24rpx;
					padding-right: 12rpx;
				}
			}
			.title{
				font-size: 32rpx;
				color: #3D3D3D;
			}
			.list{
					width: 680rpx;
					height: 578rpx;
					background: #FFFFFF;
					border-radius: 24rpx 24rpx 24rpx 24rpx;
					padding: 46rpx 36rpx;
					box-sizing: border-box;
					margin-top: 34rpx;
					margin-bottom: 47rpx;
				.list_val{
					display: flex;
					font-size: 32rpx;
					color: #3D3D3D;
					justify-content: space-between;
					margin-bottom: 32rpx;
					input{
						width: 430rpx;
						height: 70rpx;
						background: #F0F0F0;
						border-radius: 12rpx 12rpx 12rpx 12rpx;
						padding-left: 32rpx;
						box-sizing: border-box;
						font-size: 28rpx;
						color: #808080;
					}
				}
			}
		}
	}
</style>