guhongwei 2 years ago
parent
commit
5df7da1618

+ 4 - 3
app.json

@@ -1,7 +1,6 @@
 {
     "pages": [
-    
- 
+  
 
         "pages/index/index",
         "pages/register/index",
@@ -28,10 +27,12 @@
         "pages/match/shteam",
         
         "pages/match/sign",
+        
         "pages/matchInfo/index",
         "pages/matchInfo/sign",
       
-
+        "pages/order/index",
+        
         "pages/test/index"
     ],
     "usingComponents": {

+ 42 - 4
pages/match/sign.js

@@ -12,8 +12,8 @@ Page({
         list: [],
         dialog: { title: '详细信息', show: false, type: '1' },
         info: {},
-        // projectList: [],
-        // form: {}
+        projectList: [],
+        form: {}
     },
     initValidate() {
         const rules = { grouping_id: { required: true }, project_id: { required: true } }
@@ -60,17 +60,55 @@ Page({
             if (user.errcode = '0') { arr.data.user_name = user.data.name };
             // 赛事信息
             const match = await app.$get(`/newCourt/api/match/${arr.data.match_id}`);
-            if (match.errcode = '0') { arr.data.match_name = match.data.name };
+            if (match.errcode = '0') { arr.data.match_name = match.data.name; arr.data.grouping = match.data.grouping; };
             // 赛事组别
             let group = match.data.grouping.find((i) => i._id == arr.data.grouping_id);
             if (group) { arr.data.grouping_name = group.name; }
             // 赛事项目
             const project = await app.$get(`/newCourt/api/matchProject/${arr.data.project_id}`)
             if (project.errcode = '0') { arr.data.project_name = project.data.name };
-            that.setData({ info: arr.data })
+            that.setData({ form: arr.data })
             that.setData({ dialog: { title: '信息维护', show: true, type: '2' } })
         }
     },
+    // 赛事分组
+    groupingChange: async function (e) {
+        const that = this;
+        let data = that.data.form.grouping[e.detail.value];
+        that.setData({ 'form.grouping_id': data._id });
+        that.setData({ 'form.grouping_name': data.name });
+        let project = [];
+        for (const val of data.project) {
+            const arr = await app.$get(`/newCourt/api/matchProject/${val}`);
+            if (arr.errcode == '0') { project.push(arr.data) }
+        }
+        that.setData({ projectList: project });
+    },
+    // 选择组内项目
+    projectChange: function (e) {
+        const that = this;
+        let data = that.data.projectList[e.detail.value];
+        that.setData({ 'form.project_id': data._id });
+        that.setData({ 'form.project_name': data.name });
+    },
+    onSubmit: async function (e) {
+        const that = this;
+        const params = e.detail.value;
+        if (!this.WxValidate.checkForm(params)) {
+            const error = this.WxValidate.errorList[0];
+            wx.showToast({ title: `${error.msg}`, icon: 'error', duration: 2000 })
+            return false
+        } else {
+            const arr = await app.$post(`/newCourt/api/enroll/${params.id}`, params);
+            if (arr.errcode == '0') {
+                wx.showToast({ title: `维护信息成功`, icon: 'success', duration: 2000 });
+                that.watchLogin();
+                that.toClose();
+            } else {
+                wx.showToast({ title: `${arr.errMsg}`, icon: 'fail', duration: 2000 });
+            }
+        }
+    },
     // 退款
     toRefund: function (e) {
         const that = this;

+ 32 - 59
pages/match/sign.less

@@ -104,62 +104,35 @@
     }
 }
 
-// .dialog_one {
-//     margin: 10px 0 0 0;
-
-//     .one_1 {
-//         display: flex;
-//         flex-direction: row;
-//         justify-content: space-between;
-//         border: 1px solid #ccc;
-//         border-radius: 5px;
-//         margin: 0 0 10px 0;
-//         padding: 10px;
-
-//         .text {
-//             width: 20vw;
-//             color: #666;
-//             font-size: 14px;
-//         }
-
-//         .text1 {
-//             font-size: 14px;
-//             color: #000;
-//             max-width: 50vw;
-//         }
-
-//         .image {
-//             width: 15vw;
-//             height: 15vw;
-//         }
-//     }
-// }
-
-// .dialog_two {
-//     margin: 10px 0 0 0;
-
-//     .content {
-//         display: flex;
-//         flex-direction: row;
-//         justify-content: space-between;
-//         border-bottom: 1px solid #ccc;
-//         padding: 10px 0;
-//         margin: 0 0 10px 0;
-//         font-size: 14px;
-//         color: #000;
-
-//         .value {
-//             .input {
-//                 text-align: right;
-//             }
-//         }
-//     }
-
-//     .btn {
-//         text-align: center;
-
-//         button {
-//             font-size: 14px;
-//         }
-//     }
-// }
+.dialog_two {
+    .content {
+        background-color: #ffffff;
+        border-bottom: 1px solid #cccccc;
+        display: flex;
+        flex-direction: row;
+        justify-content: space-between;
+        padding: 2vw;
+        width: 76vw;
+
+        .label {
+            width: 20vw;
+            text-align: left;
+            font-size: 14px;
+        }
+
+        .value {
+            width: 55vw;
+            text-align: right;
+            font-size: 14px;
+
+            textarea {
+                width: 55vw;
+            }
+        }
+    }
+
+    .btn {
+        margin: 2vw 0 0 0;
+        text-align: center;
+    }
+}

+ 29 - 1
pages/match/sign.wxml

@@ -62,7 +62,35 @@
             </view>
         </view>
         <view class="dialog_two" wx:elif="{{dialog.type=='2'}}">
-            {{form}}
+            <form catchsubmit="onSubmit">
+                <view class="content" style="display: none;">
+                    <view class="label">数据id</view>
+                    <view class="value"><input name="id" value="{{form.id}}" placeholder="请输入数据id" disabled /></view>
+                </view>
+                <view class="content">
+                    <view class="label">比赛名称</view>
+                    <view class="value"> <textarea name="match_name" value="{{form.match_name}}" auto-height placeholder="请输入比赛名称" disabled /></view>
+                </view>
+                <view class="content">
+                    <view class="label">赛事分组</view>
+                    <view class="value">
+                        <picker mode="selector" bindchange="groupingChange" value="{{form.grouping_id}}" name="grouping_id" range-key='name' range="{{form.grouping}}">
+                            <view class="input">{{form.grouping_name||'请选择赛事分组'}}</view>
+                        </picker>
+                    </view>
+                </view>
+                <view class="content">
+                    <view class="label">组内项目</view>
+                    <view class="value">
+                        <picker mode="selector" bindchange="projectChange" value="{{form.project_id}}" name="project_id" range-key='name' range="{{projectList}}">
+                            <view class="input">{{form.project_name||'请选择组内项目'}}</view>
+                        </picker>
+                    </view>
+                </view>
+                <view class="btn">
+                    <button type="primary" size="mini" form-type="submit">提交保存</button>
+                </view>
+            </form>
         </view>
     </view>
 </e-dialog>

+ 26 - 0
pages/match/sign.wxss

@@ -83,3 +83,29 @@
 .dialog_one .one_1 text:nth-child(1) {
   color: #000000;
 }
+.dialog_two .content {
+  background-color: #ffffff;
+  border-bottom: 1px solid #cccccc;
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  padding: 2vw;
+  width: 76vw;
+}
+.dialog_two .content .label {
+  width: 20vw;
+  text-align: left;
+  font-size: 14px;
+}
+.dialog_two .content .value {
+  width: 55vw;
+  text-align: right;
+  font-size: 14px;
+}
+.dialog_two .content .value textarea {
+  width: 55vw;
+}
+.dialog_two .btn {
+  margin: 2vw 0 0 0;
+  text-align: center;
+}

+ 116 - 0
pages/order/index.js

@@ -0,0 +1,116 @@
+const app = getApp()
+import { examine_status } from '../../utils/dict';
+import WxValidate from '../../utils/wxValidate';
+Page({
+
+    /**
+     * 页面的初始数据
+     */
+    data: {
+        frameStyle: { useTop: true, name: '订单管理', leftArrow: true, useBar: false },
+        searchInfo: {},
+        list: [],
+        dialog: { title: '详细信息', show: false, type: '1' },
+        info: {},
+    },
+    // 跳转菜单
+    back(e) {
+        wx.navigateBack({ delta: 1 })
+    },
+    // 查询
+    search: function (e) { console.log('查询'); },
+    // 查看
+    toView: async function (e) {
+        const that = this;
+        const { item } = e.currentTarget.dataset;
+        const arr = await app.$get(`/newCourt/api/payOrder/${item._id}`);
+        if (arr.errcode == '0') {
+            // 用户信息
+            const user = await app.$get(`/newCourt/api/user/${arr.data.openid}`);
+            if (user.errcode = '0') { arr.data.user_name = user.data.name };
+            that.setData({ info: arr.data })
+            that.setData({ dialog: { title: '详细信息', show: true, type: '1' } })
+        }
+    },
+    // 关闭弹框
+    toClose: function () {
+        const that = this;
+        that.setData({ dialog: { title: '详细信息', show: false, type: '1' } })
+    },
+    /**
+     * 生命周期函数--监听页面加载
+     */
+    onLoad: function (options) {
+        const that = this;
+        that.watchLogin();
+    },
+    // 监听用户是否登录
+    watchLogin: async function () {
+        const that = this;
+        wx.getStorage({
+            key: 'user',
+            success: async res => {
+                const arr = await app.$get(`/newCourt/api/payOrder`);
+                if (arr.errcode == '0') {
+                    for (const val of arr.data) {
+                        // 用户信息
+                        const user = await app.$get(`/newCourt/api/user/${val.openid}`);
+                        if (user.errcode = '0') { val.user_name = user.data.name };
+                    }
+                    that.setData({ list: arr.data })
+                }
+            },
+            fail: res => {
+                wx.redirectTo({ url: '/pages/index/index', })
+            }
+        })
+    },
+    /**
+     * 生命周期函数--监听页面初次渲染完成
+     */
+    onReady: function () {
+
+    },
+
+    /**
+     * 生命周期函数--监听页面显示
+     */
+    onShow: function () {
+
+    },
+
+    /**
+     * 生命周期函数--监听页面隐藏
+     */
+    onHide: function () {
+
+    },
+
+    /**
+     * 生命周期函数--监听页面卸载
+     */
+    onUnload: function () {
+
+    },
+
+    /**
+     * 页面相关事件处理函数--监听用户下拉动作
+     */
+    onPullDownRefresh: function () {
+
+    },
+
+    /**
+     * 页面上拉触底事件的处理函数
+     */
+    onReachBottom: function () {
+
+    },
+
+    /**
+     * 用户点击右上角分享
+     */
+    onShareAppMessage: function () {
+
+    }
+})

+ 7 - 0
pages/order/index.json

@@ -0,0 +1,7 @@
+{
+    "component": true,
+    "usingComponents": {
+      "mobile-main": "/commpents/mobile-frame/index",
+      "e-dialog": "/commpents/dialog/index"
+    }
+  }

+ 105 - 0
pages/order/index.less

@@ -0,0 +1,105 @@
+.main {
+    height: 88.8vh;
+
+    .zero {
+        width: 96vw;
+
+        margin: 0 0 2vw 0;
+    }
+
+    .zero:nth-child(2) {
+        margin: 0;
+    }
+
+    .one {
+        width: 92vw;
+        padding: 2vw;
+        background-color: #f1f1f1;
+
+        input {
+            font-size: 14px;
+        }
+    }
+
+    .two {
+        flex-grow: 1;
+        position: relative;
+        width: 96vw;
+
+        .scroll-view {
+            position: absolute;
+            top: 0;
+            left: 0;
+            right: 0;
+            bottom: 0;
+
+            .list-scroll-view {
+                display: flex;
+                flex-wrap: wrap;
+                align-content: flex-start;
+                justify-content: space-between;
+
+                .list {
+                    background-color: #ffffff;
+                    margin: 0 0 2vw 0;
+                    padding: 2vw;
+                    display: flex;
+                    flex-direction: column;
+                    width: 96vw;
+
+                    .name {
+                        font-size: 16px;
+                        font-weight: bold;
+                        margin: 0 0 1vw 0;
+                    }
+
+                    .other {
+                        margin: 0 0 1vw 0;
+
+                        .other_1 {
+                            color: #858585;
+                            font-size: 12px;
+                            margin: 0 0 1vw 0;
+
+                            text:nth-child(1) {
+                                color: #000000;
+                            }
+                        }
+                    }
+
+                    .btn {
+                        text-align: center;
+
+                        button {
+                            margin: 0 2vw;
+                            font-size: 14px;
+                        }
+                    }
+                }
+
+                .list:last-child {
+                    margin: 0;
+                }
+            }
+        }
+    }
+}
+
+.dialog_one {
+    display: flex;
+    flex-direction: column;
+
+    .one_1 {
+        border-bottom: 1px solid #ccc;
+        padding: 2vw 0;
+
+        text {
+            font-size: 14px;
+            color: #858585;
+        }
+
+        text:nth-child(1) {
+            color: #000000;
+        }
+    }
+}

+ 63 - 0
pages/order/index.wxml

@@ -0,0 +1,63 @@
+<mobile-main frameStyle="{{frameStyle}}" bind:back="back">
+    <view slot="info" class="container main">
+        <view class="zero one">
+            <input type="text" value="{{searchInfo.name}}" bindconfirm="search" placeholder="请输入关键词" />
+        </view>
+        <view class="zero two">
+            <scroll-view scroll-y="true" class="scroll-view">
+                <view class="list-scroll-view">
+                    <view class="list" wx:for="{{list}}" wx:key="item">
+                        <view class="name">{{item.user_name}}--[{{item.order_no}}]</view>
+                        <view class="other">
+                            <view class="other_1">
+                                <text>支付金额:</text>
+                                <text>{{item.money}}</text>
+                            </view>
+                            <view class="other_1">
+                                <text>支付类型:</text>
+                                <text>{{item.type}}</text>
+                            </view>
+                        </view>
+                        <view class="btn">
+                            <button type="primary" size="mini" bindtap="toView" data-item="{{item}}">详细信息</button>
+                        </view>
+                    </view>
+                </view>
+            </scroll-view>
+        </view>
+    </view>
+</mobile-main>
+<e-dialog dialog="{{dialog}}" bind:toClose="toClose">
+    <view slot="info">
+        <view class="dialog_one" wx:if="{{dialog.type=='1'}}">
+            <view class="one_1">
+                <text>支付订单号:</text>
+                <text>{{info.order_no||'暂无'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付用户:</text>
+                <text>{{info.user_name||'暂无'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付金额:</text>
+                <text>{{info.money||'暂无'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付类型:</text>
+                <text>{{info.type||'暂无'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付状态:</text>
+                <text>{{info.status=='0'?'待支付':info.status=='1'?'已支付':'支付失败'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付时间:</text>
+                <text>{{info.time||'暂无'}}</text>
+            </view>
+            <view class="one_1">
+                <text>支付说明:</text>
+                <text>{{info.desc||'暂无'}}</text>
+            </view>
+        </view>
+    </view>
+</e-dialog>

+ 85 - 0
pages/order/index.wxss

@@ -0,0 +1,85 @@
+.main {
+  height: 88.8vh;
+}
+.main .zero {
+  width: 96vw;
+  margin: 0 0 2vw 0;
+}
+.main .zero:nth-child(2) {
+  margin: 0;
+}
+.main .one {
+  width: 92vw;
+  padding: 2vw;
+  background-color: #f1f1f1;
+}
+.main .one input {
+  font-size: 14px;
+}
+.main .two {
+  flex-grow: 1;
+  position: relative;
+  width: 96vw;
+}
+.main .two .scroll-view {
+  position: absolute;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+.main .two .scroll-view .list-scroll-view {
+  display: flex;
+  flex-wrap: wrap;
+  align-content: flex-start;
+  justify-content: space-between;
+}
+.main .two .scroll-view .list-scroll-view .list {
+  background-color: #ffffff;
+  margin: 0 0 2vw 0;
+  padding: 2vw;
+  display: flex;
+  flex-direction: column;
+  width: 96vw;
+}
+.main .two .scroll-view .list-scroll-view .list .name {
+  font-size: 16px;
+  font-weight: bold;
+  margin: 0 0 1vw 0;
+}
+.main .two .scroll-view .list-scroll-view .list .other {
+  margin: 0 0 1vw 0;
+}
+.main .two .scroll-view .list-scroll-view .list .other .other_1 {
+  color: #858585;
+  font-size: 12px;
+  margin: 0 0 1vw 0;
+}
+.main .two .scroll-view .list-scroll-view .list .other .other_1 text:nth-child(1) {
+  color: #000000;
+}
+.main .two .scroll-view .list-scroll-view .list .btn {
+  text-align: center;
+}
+.main .two .scroll-view .list-scroll-view .list .btn button {
+  margin: 0 2vw;
+  font-size: 14px;
+}
+.main .two .scroll-view .list-scroll-view .list:last-child {
+  margin: 0;
+}
+.dialog_one {
+  display: flex;
+  flex-direction: column;
+}
+.dialog_one .one_1 {
+  border-bottom: 1px solid #ccc;
+  padding: 2vw 0;
+}
+.dialog_one .one_1 text {
+  font-size: 14px;
+  color: #858585;
+}
+.dialog_one .one_1 text:nth-child(1) {
+  color: #000000;
+}

+ 4 - 4
pages/setting/contact.less

@@ -1,5 +1,5 @@
 .main {
-    height: 88vh;
-    background-color: #ff0000;
-  }
-  
+    height: 88.8vh;
+
+    .one {}
+}

+ 1 - 1
pages/setting/contact.wxml

@@ -1,5 +1,5 @@
 <mobile-main frameStyle="{{frameStyle}}" bind:back="back">
     <view slot="info" class="container main">
-        联系我们
+        <view class="one">联系我们</view>
     </view>
 </mobile-main>

+ 1 - 2
pages/setting/contact.wxss

@@ -1,4 +1,3 @@
 .main {
-  height: 88vh;
-  background-color: #ff0000;
+  height: 88.8vh;
 }

+ 1 - 1
pages/setting/index.js

@@ -10,7 +10,7 @@ Page({
             { title: '资料修改', route: 'basic' },
             // { title: '意见反馈', route: 'opinion' },
             { title: '联系我们', route: 'contact' },
-            { title: '解除绑定', route: 'unbind' },
+            // { title: '解除绑定', route: 'unbind' },
             // { title: '关于我们', route: 'about' },
         ]
     },

+ 27 - 17
pages/topic/index.js

@@ -1,4 +1,6 @@
 const app = getApp()
+import { examine_status } from '../../utils/dict';
+import WxValidate from '../../utils/wxValidate';
 Page({
 
     /**
@@ -6,36 +8,44 @@ Page({
      */
     data: {
         frameStyle: { useTop: true, name: '话题', leftArrow: false, useBar: true },
-        //查询条件
-        searchInfo: {
-            name: '',
-            type: '',
-            type_name: ''
-        },
+        searchInfo: {},
+        list: [{ name: '1' }],
     },
     // 跳转菜单
     tabPath(e) {
         let { route } = e.detail.detail;
         if (route) wx.redirectTo({ url: `/${route}` })
     },
-    //搜索
-    onSearch() {
-        console.log("搜索");
-    },
-    //显示弹框
-    showPopup() {
-        this.setData({ show: true });
-    },
-    //关闭弹框
-    onClose() {
-        this.setData({ show: false });
+    // 跳转菜单
+    back(e) {
+        wx.navigateBack({ delta: 1 })
     },
+    // 查询
+    search: function (e) { console.log('查询'); },
+
+
+
+
+
     /**
      * 生命周期函数--监听页面加载
      */
     onLoad: function (options) {
         const that = this;
+        that.watchLogin();
+    },
+    // 监听用户是否登录
+    watchLogin: async function () {
+        const that = this;
+        wx.getStorage({
+            key: 'user',
+            success: async res => {
 
+            },
+            fail: res => {
+                wx.redirectTo({ url: '/pages/index/index', })
+            }
+        })
     },
     /**
      * 生命周期函数--监听页面初次渲染完成

+ 86 - 2
pages/topic/index.less

@@ -1,8 +1,92 @@
 .main {
     height: 80.8vh;
-    background-color: #ff0000;
+
+    .zero {
+        width: 96vw;
+
+        margin: 0 0 2vw 0;
+    }
+
+    .zero:nth-child(2) {
+        margin: 0;
+    }
 
     .one {
-        width: 100%;
+        display: flex;
+        flex-direction: row;
+        justify-content: space-between;
+        padding: 2vw;
+        width: 92vw;
+        background-color: #f1f1f1;
+
+        input {
+            font-size: 14px;
+        }
+    }
+
+    .two {
+        flex-grow: 1;
+        position: relative;
+        width: 96vw;
+
+
+        .scroll-view {
+            position: absolute;
+            top: 0;
+            left: 0;
+            right: 0;
+            bottom: 0;
+
+            .list-scroll-view {
+                display: flex;
+                flex-wrap: wrap;
+                align-content: flex-start;
+                justify-content: space-between;
+
+                .list {
+                    background-color: #ffffff;
+                    margin: 0 0 2vw 0;
+                    padding: 2vw;
+                    display: flex;
+                    flex-direction: column;
+                    width: 96vw;
+
+                    .list_1 {
+                        display: flex;
+                        flex-direction: row;
+                        justify-content: space-between;
+                        font-size: 10px;
+                        margin: 0 0 1vw 0;
+                        color: #858585;
+                    }
+
+                    .list_2 {
+                        margin: 0 0 3vw 0;
+                        font-size: 16px;
+                        font-weight: bold;
+                    }
+
+                    .list_3 {
+                        display: flex;
+                        flex-direction: row;
+                        justify-content: space-between;
+                        font-size: 12px;
+                        color: #858585;
+
+                        .btn {
+                            button {
+                                font-size: 12px;
+                                background-color: transparent;
+                                color: #334790;
+                            }
+                        }
+                    }
+                }
+
+                .list:last-child {
+                    margin: 0;
+                }
+            }
+        }
     }
 }

+ 18 - 16
pages/topic/index.wxml

@@ -1,22 +1,24 @@
-<mobile-main frameStyle="{{frameStyle}}" bind:back="back" bind:tabPath="tabPath">
+<mobile-main frameStyle="{{frameStyle}}" bind:back="back">
     <view slot="info" class="container main">
-        <view class="one">
-            <van-search value="{{ searchInfo.name }}" input-align="center" bind:search="onSearch" placeholder="请输入要查询的话题讨论" />
+        <view class="zero one">
+            <input type="text" value="{{searchInfo.name}}" bindconfirm="search" placeholder="请输入关键词" />
         </view>
-        <!-- <view class="two">
-            <view class="two_1">
-                <view class="section">
-                    <picker mode="time" value="{{time}}" start="09:01" end="21:01" bindchange="bindTimeChange">
-                        <view class="picker">
-                            <text> 全部时间
-                                <van-iconname="arrow-down" />
-                            </text>
-                            {{time}}
+        <view class="zero two">
+            <scroll-view scroll-y="true" class="scroll-view">
+                <view class="list-scroll-view">
+                    <view class="list" wx:for="{{list}}" wx:key="item">
+                        <view class="list_1">
+                            <view>辽源市第一届青少年羽毛球公开赛暨“小虎杯”羽毛球争霸赛</view>
+                            <view>2022-08-06</view>
                         </view>
-                    </picker>
+                        <view class="list_2">辽源市第一届青少年羽毛球公开赛暨“小虎杯”羽毛球争霸赛</view>
+                        <view class="list_3">
+                            <view>已发布0个帖子</view>
+                            <view class="btn"><button type="primary" size="mini">加入话题>>></button></view>
+                        </view>
+                    </view>
                 </view>
-            </view>
-            <view class="two_1"></view>
-        </view> -->
+            </scroll-view>
+        </view>
     </view>
 </mobile-main>

+ 70 - 2
pages/topic/index.wxss

@@ -1,7 +1,75 @@
 .main {
   height: 80.8vh;
-  background-color: #ff0000;
+}
+.main .zero {
+  width: 96vw;
+  margin: 0 0 2vw 0;
+}
+.main .zero:nth-child(2) {
+  margin: 0;
 }
 .main .one {
-  width: 100%;
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  padding: 2vw;
+  width: 92vw;
+  background-color: #f1f1f1;
+}
+.main .one input {
+  font-size: 14px;
+}
+.main .two {
+  flex-grow: 1;
+  position: relative;
+  width: 96vw;
+}
+.main .two .scroll-view {
+  position: absolute;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+}
+.main .two .scroll-view .list-scroll-view {
+  display: flex;
+  flex-wrap: wrap;
+  align-content: flex-start;
+  justify-content: space-between;
+}
+.main .two .scroll-view .list-scroll-view .list {
+  background-color: #ffffff;
+  margin: 0 0 2vw 0;
+  padding: 2vw;
+  display: flex;
+  flex-direction: column;
+  width: 96vw;
+}
+.main .two .scroll-view .list-scroll-view .list .list_1 {
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  font-size: 10px;
+  margin: 0 0 1vw 0;
+  color: #858585;
+}
+.main .two .scroll-view .list-scroll-view .list .list_2 {
+  margin: 0 0 3vw 0;
+  font-size: 16px;
+  font-weight: bold;
+}
+.main .two .scroll-view .list-scroll-view .list .list_3 {
+  display: flex;
+  flex-direction: row;
+  justify-content: space-between;
+  font-size: 12px;
+  color: #858585;
+}
+.main .two .scroll-view .list-scroll-view .list .list_3 .btn button {
+  font-size: 12px;
+  background-color: transparent;
+  color: #334790;
+}
+.main .two .scroll-view .list-scroll-view .list:last-child {
+  margin: 0;
 }