Commit 1b38b4ce7d747d73cc6b3c1ba168064c8cc1a4e1

Authored by monkeyhouyi
1 parent 00e7322c

商铺、广告-列表、详情

pages.json
@@ -53,6 +53,12 @@ @@ -53,6 +53,12 @@
53 "navigationBarBackgroundColor": "#FFFFFF" 53 "navigationBarBackgroundColor": "#FFFFFF"
54 } 54 }
55 },{ 55 },{
  56 + "path": "pages/advertisementDetail/advertisementDetail",
  57 + "style": {
  58 + "navigationBarTitleText": "详情",
  59 + "navigationBarBackgroundColor": "#FFFFFF"
  60 + }
  61 + },{
56 "path": "pages/advertisement/advertisement", 62 "path": "pages/advertisement/advertisement",
57 "style": { 63 "style": {
58 "navigationBarTitleText": "租广告", 64 "navigationBarTitleText": "租广告",
@@ -103,7 +109,7 @@ @@ -103,7 +109,7 @@
103 },{ 109 },{
104 "path": "pages/advertisementAdd/advertisementAdd", 110 "path": "pages/advertisementAdd/advertisementAdd",
105 "style": { 111 "style": {
106 - "navigationBarTitleText": "申请", 112 + "navigationBarTitleText": "广告申请",
107 "navigationBarBackgroundColor": "#FFFFFF" 113 "navigationBarBackgroundColor": "#FFFFFF"
108 } 114 }
109 }, 115 },
pages/activityAdd/activityAdd.vue
@@ -31,7 +31,6 @@ @@ -31,7 +31,6 @@
31 </view> 31 </view>
32 <!-- <view class="add-list" style="padding-bottom: 0;"> 32 <!-- <view class="add-list" style="padding-bottom: 0;">
33 <u-form-item label="活动内容" borderBottom labelPosition="top"> 33 <u-form-item label="活动内容" borderBottom labelPosition="top">
34 - <u-upload :active="active" :file-list="form.fileList" :max-count="1"></u-upload>  
35 </u-form-item> 34 </u-form-item>
36 </view> --> 35 </view> -->
37 </u-form> 36 </u-form>
@@ -69,6 +68,8 @@ @@ -69,6 +68,8 @@
69 }, 68 },
70 typeShow: false, 69 typeShow: false,
71 typeList: [{ value: '1', label: '类型1' }, { value: '2', label: '类型2' }], 70 typeList: [{ value: '1', label: '类型1' }, { value: '2', label: '类型2' }],
  71 + readOnly: false,
  72 + formats: {}
72 }; 73 };
73 }, 74 },
74 methods:{ 75 methods:{
@@ -93,7 +94,7 @@ @@ -93,7 +94,7 @@
93 }, 94 },
94 typeChange(val) { 95 typeChange(val) {
95 this.form.type = val[0].name; 96 this.form.type = val[0].name;
96 - } 97 + },
97 } 98 }
98 } 99 }
99 </script> 100 </script>
pages/advertisement/advertisement.scss
@@ -6,49 +6,28 @@ @@ -6,49 +6,28 @@
6 height: 100%; 6 height: 100%;
7 } 7 }
8 .head-search{ 8 .head-search{
9 - display: flex;  
10 - align-items: center;  
11 - justify-content: space-between; 9 + display: flex;
  10 + align-items: center;
  11 + justify-content: space-between;
  12 + position: relative;
  13 + margin: 20rpx 0;
  14 + background-color: #FFFFFF;
  15 + border-radius: 35rpx;
  16 + padding: 0 10rpx;
  17 + border: 2rpx solid #E8E8E8;
  18 + margin: 22rpx 24rpx;
  19 + .u-search {
12 position: relative; 20 position: relative;
13 - margin: 20rpx;  
14 - .search{  
15 - display: flex;  
16 - align-items: center;  
17 - width: 100%;  
18 - height: 72rpx;  
19 - // border: 2rpx solid #E8E8E8;  
20 - border-radius: 100rpx;  
21 - .icon{  
22 - display: flex;  
23 - align-items: center;  
24 - margin-left: 20rpx;  
25 - margin-right: 15rpx;  
26 - image{  
27 - width: 29rpx;  
28 - height: 29rpx;  
29 - }  
30 - }  
31 - .hint{  
32 - display: flex;  
33 - align-items: center;  
34 - position: relative;  
35 - width: 100%;  
36 - .max{  
37 - font-size: 26rpx;  
38 - color: #fff;  
39 - background-color:#3F9B6A;  
40 - border-radius: 100rpx;  
41 - padding: 10rpx 25rpx;  
42 - position: absolute;  
43 - right: 0;  
44 - }  
45 - .min{  
46 - font-size: 26rpx;  
47 - color: #B5B5B5;  
48 - }  
49 - }  
50 - }  
51 } 21 }
  22 + .u-btn {
  23 + border: unset;
  24 + border: 0px transparent;
  25 + height: 46rpx;
  26 + width: 88rpx;
  27 + font-size: 24rpx;
  28 + border-radius: 35rpx;
  29 + }
  30 +}
52 /* 订单列表 */ 31 /* 订单列表 */
53 .screen-list { 32 .screen-list {
54 display: flex; 33 display: flex;
@@ -85,11 +64,14 @@ @@ -85,11 +64,14 @@
85 padding: 0 25rpx; 64 padding: 0 25rpx;
86 .list{ 65 .list{
87 display: flex; 66 display: flex;
88 - margin-bottom: 40rpx; 67 + margin-bottom: 20rpx;
  68 + background-color: #fff;
  69 + padding: 14rpx;
  70 + border-radius: 14rpx;
89 .thumb{ 71 .thumb{
90 display: flex; 72 display: flex;
91 align-items: center; 73 align-items: center;
92 - width: 30%; 74 + width: 20vw;
93 image{ 75 image{
94 width: 100%; 76 width: 100%;
95 // height: 280rpx; 77 // height: 280rpx;
pages/advertisement/advertisement.vue
@@ -2,21 +2,14 @@ @@ -2,21 +2,14 @@
2 <view class="page"> 2 <view class="page">
3 <!-- 搜索 --> 3 <!-- 搜索 -->
4 <view class="head-search"> 4 <view class="head-search">
5 - <view class="search">  
6 - <!-- <view class="icon">  
7 - <image src="/static/search.png" mode=""></image>  
8 - </view>  
9 - <view class="hint">  
10 - <text class="min">请输入关键词</text>  
11 - <text class="max">搜索</text>  
12 - </view> -->  
13 - <u-search placeholder="请输入" v-model="keyword" @search="sousu" @custom="sousu"></u-search>  
14 - </view> 5 + <u-search bg-color="#fff" placeholder="请输入关键词" v-model="query.keyword" :show-action="false" @search="search"></u-search>
  6 + <u-button type="success" @click="search">搜索</u-button>
15 </view> 7 </view>
16 <view class="screen-list"> 8 <view class="screen-list">
17 - <view class="list" @click="setList(0)"> 9 + <view class="list" @click="typeshow = true">
18 <text>类型</text> 10 <text>类型</text>
19 - <image :src="$imgUrl('/down.png')"></image> 11 + <image :src="$imgUrl('/down.png')"></image>
  12 + <u-select v-model="typeshow" :list="typeList" @confirm="(v) => {queryChange('advertisingType', v)}"></u-select>
20 </view> 13 </view>
21 <view class="list" @click="setList(1)"> 14 <view class="list" @click="setList(1)">
22 <text>租金</text> 15 <text>租金</text>
@@ -35,9 +28,10 @@ @@ -35,9 +28,10 @@
35 <!-- 订单列表 --> 28 <!-- 订单列表 -->
36 <view class="goods-data"> 29 <view class="goods-data">
37 <view class="goods-list"> 30 <view class="goods-list">
38 - <view class="list" v-for="(item,index) in tableData" :key="index"> 31 + <view class="list" v-for="(item,index) in tableData" :key="index" @click="toDetail(item)">
39 <view class="thumb"> 32 <view class="thumb">
40 - <image :src="item.locationDiagram" mode="widthFix"></image> 33 + <u-image width="20vw" height="20vw" :src="item.locationDiagram"></u-image>
  34 + <!-- <image :src="item.locationDiagram" mode="widthFix"></image> -->
41 </view> 35 </view>
42 <view class="item"> 36 <view class="item">
43 <view class="title"> 37 <view class="title">
@@ -50,17 +44,9 @@ @@ -50,17 +44,9 @@
50 </view> 44 </view>
51 <view class="goods-list-text"> 45 <view class="goods-list-text">
52 <view class="goods-list-txt">投放定价:<text>100元/天</text></view> 46 <view class="goods-list-txt">投放定价:<text>100元/天</text></view>
53 - <view class="goods-list-txt">历史平均点击率:<text>80%</text></view>  
54 - </view>  
55 - <view class="goods-list-text">  
56 - <view class="goods-list-txt">高频时段:<text>18:00 - 20:00</text></view>  
57 <view class="goods-list-txt">单次可租赁时间:<text>1天</text></view> 47 <view class="goods-list-txt">单次可租赁时间:<text>1天</text></view>
58 </view> 48 </view>
59 </view> 49 </view>
60 - <view>  
61 - <view @click="advertisementTime" class="goods-btn">可租赁时段  
62 - <image :src="$imgUrl('/right1.png')"></image></view>  
63 - </view>  
64 </view> 50 </view>
65 </view> 51 </view>
66 </view> 52 </view>
@@ -73,13 +59,21 @@ @@ -73,13 +59,21 @@
73 data() { 59 data() {
74 return { 60 return {
75 tableData: [], 61 tableData: [],
  62 + query: {
  63 + keyword: '',
  64 + advertisingType: '',
  65 + },
76 pageindex: { 66 pageindex: {
77 pageNumber: 1, 67 pageNumber: 1,
78 pageSize: 10, 68 pageSize: 10,
79 - advertisingType:'线上广告位'  
80 }, 69 },
81 - keyword:'', 70 + typeshow: false,
  71 + typeList: [
  72 + { value: '线上广告位', label: '线上广告位'},
  73 + { value: '实体广告位', label: '实体广告位'},
  74 + ],
82 show:false, 75 show:false,
  76 +
83 companys:[ 77 companys:[
84 { 78 {
85 value: '1', 79 value: '1',
@@ -96,23 +90,41 @@ @@ -96,23 +90,41 @@
96 this.getAll() 90 this.getAll()
97 }, 91 },
98 methods: { 92 methods: {
99 - advertisementTime() {  
100 - uni.navigateTo({  
101 - url: '/pages/advertisementTime/advertisementTime'  
102 - })  
103 - },  
104 //查询全数据 93 //查询全数据
105 - getAll() {  
106 -  
107 - this.$http.sendRequest('/cereAdvertisingInformation/likeGet', 'POST', this.pageindex,1).then(res => {  
108 - //成功回调  
109 - this.tableData = res.data.data.content  
110 - console.log(res.data.data.content)  
111 - }).catch(err => {  
112 - console.log(err) 94 + getAll() {
  95 + let query = Object.assign(this.pageindex, this.query);
  96 + this.$http.sendRequest('/cereAdvertisingInformation/likeGet', 'POST', query, 1).then(res => {
  97 + //成功回调
  98 + this.tableData = res.data.data.content;
  99 + }).catch(err => {
  100 + console.log(err)
113 //请求失败 101 //请求失败
114 - }) 102 + })
  103 + },
  104 + search() {
  105 + this.pageindex = {
  106 + pageNumber: 1,
  107 + pageSize: 10,
  108 + };
  109 + this.getAll();
  110 + },
  111 + queryChange(key, val) {
  112 + this.query[`${key}`] = val[0].value;
  113 + this.search();
  114 + },
  115 + toDetail(item) {
  116 + let items = JSON.stringify(item)
  117 + uni.navigateTo({
  118 + url: `/pages/advertisementDetail/advertisementDetail?item=${items}`
  119 + })
115 }, 120 },
  121 +
  122 +
  123 + // advertisementTime() {
  124 + // uni.navigateTo({
  125 + // url: '/pages/advertisementTime/advertisementTime'
  126 + // })
  127 + // },
116 setList(val){ 128 setList(val){
117 console.log(val) 129 console.log(val)
118 if(val == 0){ 130 if(val == 0){
pages/advertisementAdd/advertisementAdd.scss
@@ -3,9 +3,13 @@ @@ -3,9 +3,13 @@
3 left: 0; 3 left: 0;
4 top: 0; 4 top: 0;
5 width: 100%; 5 width: 100%;
6 - height: 100%; 6 + overflow-y: scroll;
  7 + height: calc(100% - 120rpx);
7 background-color: #f6f6f6; 8 background-color: #f6f6f6;
8 } 9 }
  10 +.steps-box {
  11 + padding-top: 40rpx;
  12 +}
9 13
10 .add-list{ 14 .add-list{
11 padding: 0 4%; 15 padding: 0 4%;
@@ -55,6 +59,38 @@ @@ -55,6 +59,38 @@
55 } 59 }
56 } 60 }
57 } 61 }
  62 + .deom-box {
  63 + width: 100vw;
  64 + display: flex !important;
  65 + padding: 14rpx 0;
  66 + background-color: #FFFFFF;
  67 + border-radius: 9px;
  68 + // margin-top: 9px;
  69 + width: 100%;
  70 + // .u-upload {
  71 + // .u-add-wrap {
  72 + // width: 304rpx !important;
  73 + // height: 182rpx !important;
  74 + // }
  75 + // }
  76 + // .u-upload {
  77 + // height: 88px;
  78 + // width: 155px;
  79 + // background: url(/static/images/uploadID1.png);
  80 + // background-size:134rpx 188rpx;
  81 + // background-repeat:no-repeat;
  82 + // }
  83 + .img-deom {
  84 + flex: 1;
  85 + display: flex;
  86 + flex-direction: column;
  87 + align-items: center;
  88 + padding: 20rpx;
  89 + text {
  90 + margin-top: 18rpx;
  91 + }
  92 + }
  93 + }
58 } 94 }
59 95
60 /* 保存按钮 */ 96 /* 保存按钮 */
@@ -63,8 +99,9 @@ @@ -63,8 +99,9 @@
63 left: 0; 99 left: 0;
64 bottom: 0; 100 bottom: 0;
65 display: flex; 101 display: flex;
  102 + align-items: center;
66 width: 100%; 103 width: 100%;
67 - height: 100rpx; 104 + height: 125rpx;
68 background-color: #FFFFFF; 105 background-color: #FFFFFF;
69 padding-bottom: constant(safe-area-inset-bottom); 106 padding-bottom: constant(safe-area-inset-bottom);
70 padding-bottom: env(safe-area-inset-bottom); 107 padding-bottom: env(safe-area-inset-bottom);
@@ -89,37 +126,6 @@ @@ -89,37 +126,6 @@
89 } 126 }
90 } 127 }
91 128
92 -.page-footera {  
93 - position: fixed;  
94 - left: 0;  
95 - bottom: 100rpx;  
96 - display: flex;  
97 - width: 100%;  
98 - height: 100rpx;  
99 - background-color: #FFFFFF;  
100 - .footer-buya{  
101 - display: flex;  
102 - align-items: center;  
103 - justify-content: space-between;  
104 - width: 100%;  
105 - padding: 0 30rpx;  
106 - .cart-adda{  
107 - display: flex;  
108 - align-items: center;  
109 - justify-content: center;  
110 - text{  
111 - font-size: 28rpx;  
112 - }  
113 - }  
114 - .cart-addb {  
115 - text{  
116 - font-size: 28rpx;  
117 - font-weight: bold;  
118 - }  
119 - }  
120 - }  
121 -}  
122 -  
123 .feedback-data{ 129 .feedback-data{
124 width: 100%; 130 width: 100%;
125 padding-bottom: 20rpx; 131 padding-bottom: 20rpx;
pages/advertisementAdd/advertisementAdd.vue
1 <template> 1 <template>
2 <view class="page"> 2 <view class="page">
3 - <view class="add-list">  
4 - <view class="list">  
5 - <view class="title">  
6 - <text>申请投放广告位</text>  
7 - </view>  
8 - <view class="content">  
9 - A小程序首页顶部banner  
10 - </view>  
11 - </view>  
12 - <view class="list">  
13 - <view class="title">  
14 - <text>所属移动端</text>  
15 - </view>  
16 - <view class="content">  
17 - A小程序  
18 - </view>  
19 - </view>  
20 - <view class="list">  
21 - <view class="title">  
22 - <text>申请人姓名</text>  
23 - <text class="star">*</text>  
24 - </view>  
25 - <view class="content">  
26 - <input type="text" placeholder="请输入">  
27 - </view>  
28 - </view>  
29 - <view class="list">  
30 - <view class="title">  
31 - <text>活动内容</text>  
32 - <text class="star">*</text>  
33 - </view>  
34 - <view class="content">  
35 - <input type="text" placeholder="请输入">  
36 - </view>  
37 - </view>  
38 - <view class="list">  
39 - <view class="title">  
40 - <text>联系方式</text>  
41 - <text class="star">*</text>  
42 - </view>  
43 - <view class="content">  
44 - <input type="text" placeholder="请输入">  
45 - </view>  
46 - </view>  
47 - <view class="list">  
48 - <view class="title">  
49 - <text>投放时间</text>  
50 - <text class="star">*</text>  
51 - </view>  
52 - <view class="content">  
53 - <input type="text" placeholder="请选择">  
54 - <image :src="$imgUrl('/right2.png')"></image>  
55 - </view>  
56 - </view>  
57 - <view class="list">  
58 - <view class="title">  
59 - <text>广告标题</text>  
60 - <text class="star">*</text>  
61 - </view>  
62 - <view class="content">  
63 - <input type="text" placeholder="请输入">  
64 - </view>  
65 - </view>  
66 - <view class="list">  
67 - <view class="title">  
68 - <text>跳转链接</text>  
69 - <text class="star">*</text>  
70 - </view>  
71 - <view class="content">  
72 - <input type="text" placeholder="请输入">  
73 - </view> 3 + <view class="steps-box">
  4 + <u-steps :list="numList" :current="active"></u-steps>
  5 + </view>
  6 + <view>
  7 + <view class="add-list" v-if="active == 0">
  8 + <u-form labelPosition="left" :model="model1" :rules="rules" ref="uForm" :labelWidth="250">
  9 + <u-form-item label="经营用途" prop="name" borderBottom>
  10 + <u-input v-model="model1.name" ></u-input>
  11 + </u-form-item>
  12 + <u-form-item label="意向租期" prop="name" borderBottom>
  13 + <u-input v-model="model1.name" ></u-input>
  14 + </u-form-item>
  15 + <u-form-item label="经营主体" prop="name" borderBottom>
  16 + <u-input v-model="model1.name" ></u-input>
  17 + </u-form-item>
  18 + </u-form>
74 </view> 19 </view>
75 - <view class="list">  
76 - <view class="title">  
77 - <text>投放内容</text>  
78 - <text class="star">*</text>  
79 - </view>  
80 - <view class="content">  
81 - <input type="text" placeholder="请输入">  
82 - </view> 20 + <view class="add-list" v-else-if='active == 1'>
  21 + <u-form labelPosition="left" :model="model1" :rules="rules" ref="uForm" :labelWidth="250">
  22 + <u-form-item label="主体名称" prop="name" borderBottom>
  23 + <u-input v-model="model1.name" ></u-input>
  24 + </u-form-item>
  25 + <u-form-item label="统一社会信用代码" prop="name" borderBottom>
  26 + <u-input v-model="model1.name" ></u-input>
  27 + </u-form-item>
  28 + <u-form-item label="类型" prop="type" borderBottom>
  29 + <u-input v-model="model1.type" type="select" @click="model1.typeShow = true" placeholder='请选择类型'/>
  30 + <u-select v-model="model1.typeShow" :list="activesType" @confirm="typeChange"></u-select>
  31 + </u-form-item>
  32 + <u-form-item label="法定代表人" prop="name" borderBottom>
  33 + <u-input v-model="model1.name" ></u-input>
  34 + </u-form-item>
  35 + <u-form-item label="经营范围" prop="name" borderBottom>
  36 + <u-input v-model="model1.name" ></u-input>
  37 + </u-form-item>
  38 + <u-form-item label="注册资本" prop="name" borderBottom>
  39 + <u-input v-model="model1.name" ></u-input>
  40 + </u-form-item>
  41 + <u-form-item label="成立日期" prop="name" borderBottom>
  42 + <u-input v-model="model1.name" ></u-input>
  43 + </u-form-item>
  44 + <u-form-item label="住所" prop="name" borderBottom>
  45 + <u-input v-model="model1.name" ></u-input>
  46 + </u-form-item>
  47 + <u-form-item label="邮箱地址" prop="name" borderBottom>
  48 + <u-input v-model="model1.name" ></u-input>
  49 + </u-form-item>
  50 + <u-form-item label="经营期限" prop="name" borderBottom>
  51 + <u-input v-model="model1.name" ></u-input>
  52 + </u-form-item>
  53 + <u-form-item label="营业执照" prop="name" borderBottom labelPosition="top">
  54 + <u-upload :active="active" :file-list="model1.fileList" ></u-upload>
  55 + </u-form-item>
  56 + </u-form>
83 </view> 57 </view>
84 - <view class="feedback-data">  
85 - <view>  
86 - <view class="title">  
87 - <text>图片</text>  
88 - <text class="star">*</text> 58 + <view v-else>
  59 + <u-form labelPosition="left" :model="model1" :rules="rules" ref="uForm" :labelWidth="250">
  60 + <view class="add-list">
  61 + <u-form-item label="经营者姓名" prop="name" borderBottom>
  62 + <u-input v-model="model1.name" ></u-input>
  63 + </u-form-item>
  64 + <u-form-item label="证件类型" prop="type" borderBottom>
  65 + <u-input v-model="model1.type" type="select" @click="model1.typeShow = true" placeholder='请选择类型'/>
  66 + <u-select v-model="model1.typeShow" :list="activesType" @confirm="typeChange"></u-select>
  67 + </u-form-item>
  68 + <u-form-item label="身份证号码" prop="name" borderBottom>
  69 + <u-input v-model="model1.name" ></u-input>
  70 + </u-form-item>
  71 + <u-form-item label="身份证有效期" prop="name" borderBottom>
  72 + <u-input v-model="model1.name" ></u-input>
  73 + </u-form-item>
  74 + </view>
  75 + <view class="add-list">
  76 + <view class="deom-box">
  77 + <view class="img-deom">
  78 + <u-upload :active="active" :file-list="model1.fileList" :custom-btn="true" :max-count="1">
  79 + <view slot="addBtn" class="slot-btn" hover-class="slot-btn__hover" hover-stay-time="150">
  80 + <u-image width="304rpx" height="182rpx" src="/static/images/uploadID1.png"></u-image>
  81 + </view>
  82 + </u-upload>
  83 + <text>点击上传证件人像面</text>
  84 + </view>
  85 + <view class="img-deom">
  86 + <u-upload :active="active" :file-list="model1.fileList" :custom-btn="true" :max-count="1">
  87 + <view slot="addBtn" class="slot-btn" hover-class="slot-btn__hover" hover-stay-time="150">
  88 + <u-image width="304rpx" height="182rpx" src="/static/images/uploadID2.png"></u-image>
  89 + </view>
  90 + </u-upload>
  91 + <text>点击上传证件国徽面</text>
  92 + </view>
  93 + </view>
  94 + </view>
  95 + <view class="add-list">
  96 + <view style="line-height: 60rpx;">上传示例</view>
  97 + <view class="deom-box">
  98 + <view class="img-deom">
  99 + <u-image width="304rpx" height="182rpx" src="/static/images/front-icon.png"></u-image>
  100 + <text>人脸示例图</text>
  101 + </view>
  102 + <view class="img-deom">
  103 + <u-image width="304rpx" height="182rpx" src="/static/images/back-icon.png"></u-image>
  104 + <text>国徽面示例图</text>
  105 + </view>
  106 + </view>
89 </view> 107 </view>
90 - </view>  
91 - <view class="voucher-img">  
92 - <view class="voucher-list">  
93 - <image :src="$imgUrl('/voucher_bg.png')" ></image> 108 + <text style="display: inline-block; font-size: 24rpx; line-height: 30px; margin: 24rpx 30rpx 0;">请拍摄证件原件,保证照片拍摄清晰,取图完整,不反光。</text>
  109 + <view class="add-list" labelPosition="left" :model="model1" :rules="rules" ref="uForm" :labelWidth="250">
  110 + <u-form-item label="是否为法人" prop="name" borderBottom>
  111 + <u-radio-group v-model="model1.name">
  112 + <u-radio :name="1">是</u-radio>
  113 + <u-radio :name="2">否</u-radio>
  114 + </u-radio-group>
  115 + </u-form-item>
  116 + <u-form-item label="企业授权书" prop="name" borderBottom labelPosition="top">
  117 + <u-upload :active="active" :file-list="model1.fileList" ></u-upload>
  118 + </u-form-item>
94 </view> 119 </view>
95 - </view> 120 + </u-form>
96 </view> 121 </view>
97 </view> 122 </view>
98 <!-- 保存按钮 --> 123 <!-- 保存按钮 -->
99 - <view class="page-footera">  
100 - <view class="footer-buya">  
101 - <view class="cart-adda">  
102 - <text>合计</text>  
103 - </view>  
104 - <view class="cart-addb">  
105 - <text>1896.00元/4天</text>  
106 - </view>  
107 - </view>  
108 - </view>  
109 - <view class="page-footer" @click="shenq">  
110 - <view class="footer-buy">  
111 - <view class="cart-add">  
112 - <text>立即申请</text>  
113 - </view>  
114 - </view> 124 + <view class="page-footer">
  125 + <u-button style="background-color: #DFE0E4; flex: 1; margin: 0 10px;" @click="toBefor" v-if="active != 0">上一步</u-button>
  126 + <u-button type="success" style="flex: 1; margin: 0 10px;" @click="toNext" v-if="active != 2">下一步</u-button>
  127 + <u-button type="success" style="flex: 1; margin: 0 10px;" @click="go" v-if="active == 2">提交申请</u-button>
115 </view> 128 </view>
116 </view> 129 </view>
117 </template> 130 </template>
@@ -120,29 +133,53 @@ @@ -120,29 +133,53 @@
120 export default { 133 export default {
121 data() { 134 data() {
122 return { 135 return {
  136 + active: 2,
  137 + numList: [{name: '租赁信息'}, {name: '主体信息'}, {name: '经营者信息'}],
  138 + model1: {
  139 + name: '',
  140 + type: '',
  141 + typeShow: false,
  142 + fileList: [], // 文件列表
  143 + },
  144 + rules: {},
  145 + // 类型
  146 + showType: false,
  147 + activesType: [
  148 + {value: 1, label: '类型1'},
  149 + {value: 2, label: '类型2'},
  150 + ],
  151 + // 上传文件
  152 + active: '', // 地址
123 153
124 }; 154 };
125 }, 155 },
126 - onShow() {  
127 -  
128 -  
129 - }, 156 + onLoad() {
  157 + // 检查用户是否登录
  158 + const isLogin = uni.getStorageSync('token') || false;
  159 + if (!isLogin) {
  160 + // 如果未登录,跳转到登录页面
  161 + uni.redirectTo({
  162 + url: '/pages/login/login'
  163 + });
  164 + }
  165 + },
130 methods:{ 166 methods:{
131 - shenq(){  
132 - const isLogin = uni.getStorageSync('token') || false;  
133 - if (!isLogin) {  
134 - // 如果未登录,跳转到登录页面  
135 - uni.navigateTo({  
136 - url: '/pages/login/login',  
137 - })  
138 - }else{  
139 - uni.navigateTo({  
140 - url: '/pages/servicerecords/servicerecords',  
141 - })  
142 - }  
143 - 167 + typeChange(e) {
  168 + this.model1.type = e[0].label;
  169 + },
  170 + go(){
  171 + uni.navigateTo({
  172 + url: '/pages/record/record'
  173 + })
  174 + },
  175 + // 上一步
  176 + toBefor() {
  177 + this.active = +this.active - 1;
  178 + },
  179 + // 下一步
  180 + toNext() {
  181 + this.active = +this.active + 1;
144 } 182 }
145 -  
146 } 183 }
147 } 184 }
148 </script> 185 </script>
pages/details/details.scss
@@ -30,10 +30,12 @@ @@ -30,10 +30,12 @@
30 } 30 }
31 .banner-item-form { 31 .banner-item-form {
32 .form-item { 32 .form-item {
  33 + line-height: 30rpx;
  34 + font-size: 24rpx;
33 display: flex; 35 display: flex;
34 justify-content: flex-start; 36 justify-content: flex-start;
35 align-items: top; 37 align-items: top;
36 - padding: 8rpx 0; 38 + padding: 14rpx 0;
37 } 39 }
38 } 40 }
39 &:last-child { 41 &:last-child {
pages/details/details.vue
@@ -20,33 +20,41 @@ @@ -20,33 +20,41 @@
20 <view class="banner-item field"> 20 <view class="banner-item field">
21 <view class="banner-item-title">场地信息</view> 21 <view class="banner-item-title">场地信息</view>
22 <view class="banner-item-form"> 22 <view class="banner-item-form">
23 - <view class="form-item" style="width: 50%;">  
24 - <view class="label">场地类型:</view>  
25 - <text>{{tableData.architecturalForm}}</text>  
26 - </view>  
27 - <view class="form-item" style="width: 50%;">  
28 - <view class="label">实际使用面积:</view>  
29 - <text>{{tableData.actualUsableArea}}</text>  
30 - </view>  
31 - <view class="form-item">  
32 - <view class="label">所属区域:</view>  
33 - <text>{{tableData.belongingRegion}}</text>  
34 - </view>  
35 - <view class="form-item">  
36 - <view class="label">规划图纸:</view>  
37 - <view>  
38 - <u-image v-if="tableData.architecturalDrawings" :showLoading="true" :src="tableData.architecturalDrawings" width="calc(90vw - 140rpx)" height="300rpx"></u-image>  
39 - <text v-else>暂无</text>  
40 - </view>  
41 - <!-- architecturalDrawings -->  
42 - </view>  
43 - <view class="form-item">  
44 -  
45 - </view>  
46 - <view class="form-item">  
47 - <view class="label" style="width: 142rpx;">位置描述:</view>  
48 - <text style='flex: 1;'>{{tableData.detailedLocation}}</text>  
49 - </view> 23 + <u-row gutter="10">
  24 + <u-col span="6">
  25 + <view class="form-item">
  26 + <view class="label">场地类型:</view>
  27 + <text>{{tableData.architecturalForm}}</text>
  28 + </view>
  29 + </u-col>
  30 + <u-col span="6">
  31 + <view class="form-item">
  32 + <view class="label">实际使用面积:</view>
  33 + <text>{{tableData.actualUsableArea}}m²</text>
  34 + </view>
  35 + </u-col>
  36 + <u-col span="6">
  37 + <view class="form-item">
  38 + <view class="label">所属区域:</view>
  39 + <text>{{tableData.belongingRegion}}</text>
  40 + </view>
  41 + </u-col>
  42 + <u-col span="12">
  43 + <view class="form-item">
  44 + <view class="label">规划图纸:</view>
  45 + <view>
  46 + <u-image v-if="tableData.architecturalDrawings" :showLoading="true" :src="tableData.architecturalDrawings" width="calc(90vw - 140rpx)" height="300rpx"></u-image>
  47 + <text v-else>暂无</text>
  48 + </view>
  49 + </view>
  50 + </u-col>
  51 + <u-col span="12">
  52 + <view class="form-item">
  53 + <view class="label" style="width: 142rpx;">位置描述:</view>
  54 + <text style='flex: 1;'>{{tableData.detailedLocation}}</text>
  55 + </view>
  56 + </u-col>
  57 + </u-row>
50 </view> 58 </view>
51 </view> 59 </view>
52 <view class="banner-item position"> 60 <view class="banner-item position">
@@ -87,6 +95,7 @@ @@ -87,6 +95,7 @@
87 <view class="footer-btn"> 95 <view class="footer-btn">
88 <u-button type="primary">意向申请</u-button> 96 <u-button type="primary">意向申请</u-button>
89 <u-button type="success" style="margin-left: unset;" @click="leaseAdd">租赁申请</u-button> 97 <u-button type="success" style="margin-left: unset;" @click="leaseAdd">租赁申请</u-button>
  98 + <!-- <u-button type="success" style="margin-left: unset;" @click="leaseAdd">广告申请</u-button> -->
90 </view> 99 </view>
91 <view class="footer-service"> 100 <view class="footer-service">
92 <u-image :showLoading="true" src="/static/images/share-icon.png" width="30rpx" height="30rpx"></u-image> 101 <u-image :showLoading="true" src="/static/images/share-icon.png" width="30rpx" height="30rpx"></u-image>
pages/mycreated/mycreated.scss
@@ -3,7 +3,7 @@ @@ -3,7 +3,7 @@
3 left: 0; 3 left: 0;
4 top: 0; 4 top: 0;
5 width: 100%; 5 width: 100%;
6 - min-height: 100vh; 6 + height: 100%;
7 // padding: 0 40rpx; 7 // padding: 0 40rpx;
8 // background-color: #fff; 8 // background-color: #fff;
9 } 9 }
pages/mycreated/mycreated.vue
1 <template> 1 <template>
2 <view class="page"> 2 <view class="page">
3 <view class="tabs-box"> 3 <view class="tabs-box">
4 - <u-tabs-swiper ref="tabs" :current="current" :list="tabList" @change="tabsChange" :is-scroll="false" :font-size="24" active-color="#0FBB59" :height="70"></u-tabs-swiper> 4 + <u-tabs-swiper ref="tabs" :current="current" :list="tabList" @change="tabsChange" :is-scroll="false" :font-size="24" active-color="#0FBB59" :height="70">
  5 + </u-tabs-swiper>
5 </view> 6 </view>
6 <!-- 搜索 --> 7 <!-- 搜索 -->
7 <view class="head-search"> 8 <view class="head-search">
pages/participation/participation.scss
@@ -4,22 +4,20 @@ @@ -4,22 +4,20 @@
4 top: 0; 4 top: 0;
5 width: 100%; 5 width: 100%;
6 height: 100%; 6 height: 100%;
7 - padding: 0 24rpx;  
8 } 7 }
9 .more { 8 .more {
10 - width: 100%;  
11 height: 74rpx; 9 height: 74rpx;
12 background-color: #fff; 10 background-color: #fff;
13 border-radius: 21rpx; 11 border-radius: 21rpx;
14 padding: 24rpx 32rpx 18rpx; 12 padding: 24rpx 32rpx 18rpx;
15 - margin-top: 26rpx; 13 + margin: 26rpx 24rpx 0;
16 } 14 }
17 .head-search{ 15 .head-search{
18 display: flex; 16 display: flex;
19 align-items: center; 17 align-items: center;
20 justify-content: space-between; 18 justify-content: space-between;
21 position: relative; 19 position: relative;
22 - margin: 20rpx 0; 20 + margin: 20rpx 24rpx;
23 background-color: #FFFFFF; 21 background-color: #FFFFFF;
24 border-radius: 35rpx; 22 border-radius: 35rpx;
25 padding: 0 10rpx; 23 padding: 0 10rpx;
@@ -38,33 +36,32 @@ @@ -38,33 +36,32 @@
38 } 36 }
39 /* 订单列表 */ 37 /* 订单列表 */
40 .screen-list { 38 .screen-list {
  39 + display: flex;
  40 + align-items: center;
  41 + width: 100%;
  42 + margin-bottom: 20rpx;
  43 + width: 100%;
  44 + .list {
41 display: flex; 45 display: flex;
  46 + justify-content: center;
42 align-items: center; 47 align-items: center;
43 - width: 100%;  
44 - margin: 40rpx 0;  
45 - width: 100%;  
46 - .list {  
47 - display: flex;  
48 - justify-content: center;  
49 - align-items: center;  
50 - width: 25%;  
51 - height: 100%;  
52 - text {  
53 - font-size: 26rpx;  
54 - color: #555555;  
55 - }  
56 - image {  
57 - width: 30rpx;  
58 - height: 30rpx;  
59 - margin-left: 10rpx;  
60 - } 48 + width: 25%;
  49 + height: 100%;
  50 + text {
  51 + font-size: 26rpx;
  52 + color: #555555;
  53 + }
  54 + image {
  55 + width: 30rpx;
  56 + height: 30rpx;
  57 + margin-left: 10rpx;
61 } 58 }
62 -  
63 -  
64 } 59 }
  60 +}
65 61
66 .goods-data{ 62 .goods-data{
67 width: 100%; 63 width: 100%;
  64 + padding: 0 24rpx;
68 // height: calc(100% - 300rpx - 120rpx); 65 // height: calc(100% - 300rpx - 120rpx);
69 // overflow-y: scroll; 66 // overflow-y: scroll;
70 .goods-list{ 67 .goods-list{
pages/participation/participation.vue
@@ -14,7 +14,7 @@ @@ -14,7 +14,7 @@
14 <u-button type="success" @click="search">搜索</u-button> 14 <u-button type="success" @click="search">搜索</u-button>
15 </view> 15 </view>
16 <view class="screen-list"> 16 <view class="screen-list">
17 - <u-dropdown menu-icon="arrow-down-fill"> 17 + <u-dropdown menu-icon="arrow-down-fill" :title-size="24" :height="40">
18 <u-dropdown-item v-model="query.sortType" title="时间排序" :options="sortTypeOptions" @change="search"></u-dropdown-item> 18 <u-dropdown-item v-model="query.sortType" title="时间排序" :options="sortTypeOptions" @change="search"></u-dropdown-item>
19 <u-dropdown-item v-model="query.status" title="活动状态" :options="statusOptions" @change="search"></u-dropdown-item> 19 <u-dropdown-item v-model="query.status" title="活动状态" :options="statusOptions" @change="search"></u-dropdown-item>
20 </u-dropdown> 20 </u-dropdown>
pages/shops/shops.scss
@@ -6,51 +6,28 @@ @@ -6,51 +6,28 @@
6 height: 100%; 6 height: 100%;
7 } 7 }
8 .head-search{ 8 .head-search{
9 - display: flex;  
10 - align-items: center;  
11 - justify-content: space-between; 9 + display: flex;
  10 + align-items: center;
  11 + justify-content: space-between;
  12 + position: relative;
  13 + margin: 20rpx 0;
  14 + background-color: #FFFFFF;
  15 + border-radius: 35rpx;
  16 + padding: 0 10rpx;
  17 + border: 2rpx solid #E8E8E8;
  18 + margin: 22rpx 24rpx;
  19 + .u-search {
12 position: relative; 20 position: relative;
13 - margin: 20rpx;  
14 - .search{  
15 - display: flex;  
16 - align-items: center;  
17 - width: 100%;  
18 - // padding: 0 10rpx;  
19 - height: 72rpx;  
20 - // background-color: #fff;  
21 - border: 2rpx solid #E8E8E8;  
22 - border-radius: 100rpx;  
23 - .icon{  
24 - display: flex;  
25 - align-items: center;  
26 - margin-left: 20rpx;  
27 - margin-right: 15rpx;  
28 - image{  
29 - width: 29rpx;  
30 - height: 29rpx;  
31 - }  
32 - }  
33 - .hint{  
34 - display: flex;  
35 - align-items: center;  
36 - position: relative;  
37 - width: 100%;  
38 - .max{  
39 - font-size: 26rpx;  
40 - color: #fff;  
41 - background-color:#3F9B6A;  
42 - border-radius: 100rpx;  
43 - padding: 10rpx 25rpx;  
44 - position: absolute;  
45 - right: 0;  
46 - }  
47 - .min{  
48 - font-size: 26rpx;  
49 - color: #B5B5B5;  
50 - }  
51 - }  
52 - }  
53 } 21 }
  22 + .u-btn {
  23 + border: unset;
  24 + border: 0px transparent;
  25 + height: 46rpx;
  26 + width: 88rpx;
  27 + font-size: 24rpx;
  28 + border-radius: 35rpx;
  29 + }
  30 +}
54 /* 订单列表 */ 31 /* 订单列表 */
55 .screen-list { 32 .screen-list {
56 display: flex; 33 display: flex;
@@ -97,11 +74,15 @@ @@ -97,11 +74,15 @@
97 padding: 0 25rpx; 74 padding: 0 25rpx;
98 .list{ 75 .list{
99 display: flex; 76 display: flex;
100 - margin-bottom: 40rpx; 77 + margin-bottom: 20rpx;
  78 + background-color: #fff;
  79 + padding: 14rpx;
  80 + border-radius: 14rpx;
101 .thumb{ 81 .thumb{
102 display: flex; 82 display: flex;
103 align-items: center; 83 align-items: center;
104 - width: 36%; 84 + // width: 36%;
  85 + width: 25vw;
105 image{ 86 image{
106 width: 230rpx; 87 width: 230rpx;
107 height: 230rpx; 88 height: 230rpx;
pages/shops/shops.vue
@@ -2,14 +2,14 @@ @@ -2,14 +2,14 @@
2 <view class="page"> 2 <view class="page">
3 <!-- 搜索 --> 3 <!-- 搜索 -->
4 <view class="head-search"> 4 <view class="head-search">
5 - <view class="search">  
6 - <u-search placeholder="请输入" v-model="keyword" @search="sousu" @custom="sousu"></u-search>  
7 - </view> 5 + <u-search bg-color="#fff" placeholder="请输入关键词" v-model="query.keyword" :show-action="false" @search="search"></u-search>
  6 + <u-button type="success" @click="search">搜索</u-button>
8 </view> 7 </view>
9 <view class="screen-list"> 8 <view class="screen-list">
10 - <view class="list" @click="setList(0)"> 9 + <view class="list" @click="show = true">
11 <text>区域</text> 10 <text>区域</text>
12 <image :src="$imgUrl('/down.png')"></image> 11 <image :src="$imgUrl('/down.png')"></image>
  12 + <u-select v-model="show" :list="areList" @confirm="(v) => {queryChange('belongingRegion', v)}"></u-select>
13 </view> 13 </view>
14 <view class="list" @click="setList(1)"> 14 <view class="list" @click="setList(1)">
15 <text>租金</text> 15 <text>租金</text>
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 <text>默认排序</text> 19 <text>默认排序</text>
20 <image :src="$imgUrl('/down.png')"></image> 20 <image :src="$imgUrl('/down.png')"></image>
21 </view> 21 </view>
22 - <!-- <view class="list" @click="setList(3)"> 22 + <!-- <view class="list" @click="setList(3)">
23 <text>筛选</text> 23 <text>筛选</text>
24 <image :src="`${this.$imgs}/down.png`" ></image> 24 <image :src="`${this.$imgs}/down.png`" ></image>
25 </view> --> 25 </view> -->
@@ -33,7 +33,8 @@ @@ -33,7 +33,8 @@
33 <view class="goods-list"> 33 <view class="goods-list">
34 <view class="list" v-for="(item,index) in tableData" :key="index" @click="reconciliationdetail(item)"> 34 <view class="list" v-for="(item,index) in tableData" :key="index" @click="reconciliationdetail(item)">
35 <view class="thumb"> 35 <view class="thumb">
36 - <image :src="item.displayMainImage" mode=""></image> 36 + <u-image width="25vw" height="25vw" :src="item.displayMainImage"></u-image>
  37 + <!-- <image :src="item.displayMainImage" mode=""></image> -->
37 </view> 38 </view>
38 <view class="item"> 39 <view class="item">
39 <view class="title"> 40 <view class="title">
@@ -128,11 +129,27 @@ @@ -128,11 +129,27 @@
128 export default { 129 export default {
129 data() { 130 data() {
130 return { 131 return {
131 - tableData: [], 132 + query: {
  133 + keyword:'',
  134 + belongingRegion: '',
  135 + },
132 pageindex: { 136 pageindex: {
133 pageNumber: 1, 137 pageNumber: 1,
134 pageSize: 10, 138 pageSize: 10,
135 }, 139 },
  140 + tableData: [],
  141 + areList: [
  142 + {value: '武侯区', label: '武侯区'},
  143 + {value: '锦江区', label: '锦江区'},
  144 + {value: '青羊区', label: '青羊区'},
  145 + {value: '金牛区', label: '金牛区'},
  146 + {value: '双流区', label: '双流区'},
  147 + {value: '郫都区', label: '郫都区'},
  148 + {value: '龙泉驿区', label: '龙泉驿区'},
  149 + {value: '温江区', label: '温江区'},
  150 + ], // 区域列表
  151 +
  152 +
136 zidongS: false, 153 zidongS: false,
137 formList: { 154 formList: {
138 zulei: '', 155 zulei: '',
@@ -168,24 +185,16 @@ @@ -168,24 +185,16 @@
168 show1:false, 185 show1:false,
169 list:[], 186 list:[],
170 xuanval:0, 187 xuanval:0,
171 - keyword:''  
172 -  
173 } 188 }
174 }, 189 },
175 mounted() { 190 mounted() {
176 this.getAll() 191 this.getAll()
177 }, 192 },
178 methods: { 193 methods: {
179 - reconciliationdetail(item) {  
180 - let items = JSON.stringify(item)  
181 - uni.navigateTo({  
182 - url: `/pages/details/details?item=${items}`  
183 - })  
184 - },  
185 - //查询全数据 194 + //请求列表数据
186 getAll() { 195 getAll() {
187 -  
188 - this.$http.sendRequest('/cereBasicInformationShop/queryByPage', 'POST', this.pageindex, 1).then(res => { 196 + let query = Object.assign(this.query, this.pageindex);
  197 + this.$http.sendRequest('/cereBasicInformationShop/queryByPage', 'POST', query, 1).then(res => {
189 //成功回调 198 //成功回调
190 this.tableData = res.data.data.content 199 this.tableData = res.data.data.content
191 }).catch(err => { 200 }).catch(err => {
@@ -193,6 +202,24 @@ @@ -193,6 +202,24 @@
193 //请求失败 202 //请求失败
194 }) 203 })
195 }, 204 },
  205 + // 查询
  206 + search() {
  207 + this.pageindex = { pageNumber: 1, pageSize: 10 };
  208 + this.getAll();
  209 + },
  210 + queryChange(key, val) {
  211 + this.query[`${key}`] = val[0].value;
  212 + this.search();
  213 + },
  214 + reconciliationdetail(item) {
  215 + let items = JSON.stringify(item)
  216 + uni.navigateTo({
  217 + url: `/pages/details/details?item=${items}`
  218 + })
  219 + },
  220 +
  221 +
  222 + // 自动匹配
196 zidong() { 223 zidong() {
197 this.zidongS = true 224 this.zidongS = true
198 }, 225 },
@@ -283,9 +310,9 @@ @@ -283,9 +310,9 @@
283 const filteredTableData = this.tableData.filter(item => item.hasOwnProperty('belongingRegion')); 310 const filteredTableData = this.tableData.filter(item => item.hasOwnProperty('belongingRegion'));
284 311
285 // 提取 belongingRegion 字段并进行去重 312 // 提取 belongingRegion 字段并进行去重
286 - const labeledBelongingRegions = filteredTableData.map(item => ({  
287 - label: item.belongingRegion  
288 - })); 313 + const labeledBelongingRegions = filteredTableData.map(item => ({
  314 + label: item.belongingRegion
  315 + }));
289 316
290 const uniqueBelongingRegions = [...new Set(labeledBelongingRegions)]; 317 const uniqueBelongingRegions = [...new Set(labeledBelongingRegions)];
291 console.log(uniqueBelongingRegions) 318 console.log(uniqueBelongingRegions)