|
|
- <template>
- <view class="applyLaundryStore">
- <navbar title="申请水洗店" leftClick @leftClick="$utils.navigateBack" />
-
-
- <view class="frame">
- <view class="title">
- <span
- style="width: 10rpx;height: 40rpx;background-color: #f78142;border-radius: 10rpx;overflow: hidden;"></span>
- <span>店铺信息</span>
- </view>
- <view class="shopName">
- <view>店铺名称</view>
- <view>
- <input v-model="form.name" placeholder="请输入店铺名称" clearable></input>
- </view>
- </view>
- <view class="shopName">
- <view>您的姓名</view>
- <view>
- <input v-model="form.userName" placeholder="请输入您的姓名" clearable></input>
- </view>
- </view>
- <view class="shopName">
- <view>联系方式</view>
- <view>
- <input v-model="form.phone" type="number" placeholder="请输入联系方式" clearable></input>
- </view>
- </view>
-
- <view class="currentRegion">
- <view>所在地区</view>
- <view>
- <input class="input" v-model="form.currentRegion" placeholder="请选择所在地区"></input>
- <view class="orientation" @click.stop="selectAddr">
- 定位
- <image src="../static/address/selectIcon.png"
- style="width:30rpx;height: 30rpx;margin:5rpx 5rpx 5rpx 5rpx;"></image>
- </view>
- </view>
- </view>
- <view class="shopName">
- <view>详细地址</view>
- <view>
- <input v-model="form.address" placeholder="详细地址" clearable></input>
- </view>
- </view>
- </view>
-
-
- <!-- 底部按钮 -->
- <bottomBtn @confirm='submitApplication()' :color='bottomBtnStyle.color'
- :backgroundColor='bottomBtnStyle.backgroundColor' :fontSize='bottomBtnStyle.fontSize'
- :text='bottomBtnStyle.text' :width="bottomBtnStyle.width" :height="bottomBtnStyle.height"
- :borderRadius='bottomBtnStyle.borderRadius' :bottom='bottomBtnStyle.bottom'>
- </bottomBtn>
-
-
- </view>
- </template>
-
- <script>
- import Position from '@/utils/position.js'
- import bottomBtn from "../../components/bottom/bottomBtn.vue"
- export default {
- components: {
- bottomBtn,
- },
- data() {
- return {
- form: {
- userName: '',
- name: '',
- phone: '',
- currentRegion: '',
- address: '',
- latitude: '',
- longitude: '',
- },
-
- bottomBtnStyle: {
- color: '#FFF',
- backgroundColor: '#fd5100',
- fontSize: '34rpx',
- text: '提交',
- width: '400rpx',
- height: '80rpx',
- borderRadius: '100rpx',
- bottom: '40rpx'
- },
- }
- },
- computed: {
-
- },
- onShow() {
-
- },
- methods: {
-
- // 提交按钮
- submitApplication() {
- this.form.address = this.form.currentRegion + this.form.address
- this.$api('applyShopHotel', this.form, res => {
- if (res.code == 200) {
- uni.showToast({
- title: '申请成功待审核', // 提示的内容
- icon: 'success', // 图标,可选值有 'success', 'loading', 'none'
- duration: 1500 // 提示的持续时间,默认是1500毫秒
- });
- setTimeout(() => {
- uni.navigateTo({
- url: '/pages/index/center'
- })
- }, 1500)
- }
- })
- },
-
- //地图上选择地址
- selectAddr() {
- Position.getLocation(res => {
- Position.selectAddress(res.longitude, res.latitude, success => {
- this.setAddress(success)
- })
- })
- Position.getLocationDetail(res => {
- console.log(res);
- this.form.address = res
- })
- },
-
- //提取用户选择的地址信息复制给表单数据
- setAddress(res) {
- //经纬度信息
- this.form.latitude = res.latitude
- this.form.longitude = res.longitude
-
- if (!res.address && res.name) { //用户直接选择城市的逻辑
- return this.form.currentRegion = res.name
-
- }
- if (res.address || res.name) {
- return this.form.currentRegion = res.address + res.name
- }
- this.form.currentRegion = '' //用户啥都没选就点击勾选
- },
-
-
-
- }
- }
- </script>
-
- <style lang="scss" scoped>
- * {
- box-sizing: border-box;
- }
-
- .applyLaundryStore {
- padding: 0 20rpx 0 20rpx;
- background-color: #f5f5f5;
-
- .frame {
- display: flex;
- flex-direction: column;
- gap: 20rpx;
- background-color: #FFF;
- margin-top: 20rpx;
- padding: 20rpx;
-
- .title {
- display: flex;
- // padding-top: 40rpx;
- font-size: 34rpx;
- font-weight: 700;
- padding: 0 0 0 20rpx;
-
- >span:nth-of-type(1) {
- margin: 4rpx 0 0 8rpx;
- background-color: #FFF;
- }
-
- >span:nth-of-type(2) {
- margin: 0 0 0 8rpx;
- background-color: #FFF;
- }
- }
-
- .shopName {
- display: flex;
- align-items: center;
- background-color: #FFF;
- height: 80rpx;
- // margin: 10rpx 0 0 0;
- padding: 10rpx 0 0 20rpx;
-
- >view:nth-of-type(1) {
- width: 30%;
- // font-weight: 700;
- }
-
- >view:nth-of-type(2) {
- width: 70%;
- // padding: 0 20rpx 0 0;
- border-radius: 10rpx;
- overflow: hidden;
-
- input {
- background-color: #f5f5f5;
- // color: #a4a4a4;
- font-size: 28rpx;
- padding: 8rpx 8rpx 8rpx 15rpx;
- }
- }
- }
-
- .name {
- display: flex;
- align-items: center;
- background-color: #FFF;
- height: 80rpx;
- // margin: 10rpx 0 0 0;
- padding: 10rpx 0 0 20rpx;
-
- >view:nth-of-type(1) {
- width: 30%;
- font-weight: 700;
- }
-
- >view:nth-of-type(2) {
- width: 70%;
- padding: 0 20rpx 0 0;
- }
- }
-
- .phone {
- display: flex;
- align-items: center;
- background-color: #FFF;
- height: 80rpx;
- // margin: 10rpx 0 0 0;
- padding: 10rpx 0 0 20rpx;
-
- >view:nth-of-type(1) {
- width: 30%;
- font-weight: 700;
- }
-
- >view:nth-of-type(2) {
- width: 70%;
- padding: 0 20rpx 0 0;
- }
- }
-
- .currentRegion {
- display: flex;
- align-items: center;
- background-color: #FFF;
- height: 80rpx;
- // margin: 10rpx 0 0 0;
- padding: 10rpx 0 0 20rpx;
-
- >view:nth-of-type(1) {
- width: 30%;
- // font-weight: 700;
- }
-
- >view:nth-of-type(2) {
- width: 70%;
- padding: 0 20rpx 0 0;
- display: flex;
-
- .input {
- background-color: #f5f5f5;
- // color: #a4a4a4;
- font-size: 28rpx;
- padding: 8rpx 8rpx 8rpx 15rpx;
- width: 300rpx;
- }
-
- .orientation {
- display: flex;
- padding: 10rpx 10rpx 10rpx 20rpx;
- font-size: 30rpx;
- color: #FBAB32;
- }
-
-
-
- }
- }
-
- .detailedAddress {
- display: flex;
- align-items: center;
- background-color: #FFF;
- height: 80rpx;
- // margin: 10rpx 0 0 0;
- padding: 10rpx 0 0 20rpx;
-
- >view:nth-of-type(1) {
- width: 30%;
- font-weight: 700;
- }
-
- >view:nth-of-type(2) {
- width: 70%;
- padding: 0 20rpx 0 0;
- }
- }
-
-
-
- }
- }
- </style>
|