Browse Source

+ 报名页面

chen.cheng 11 months ago
parent
commit
25060e7c03

+ 2 - 2
common/api.js

@@ -20,10 +20,10 @@ export const fetchFileList = (params) => http.get('/cp/fileInfo/list',
 
 export const putUsrRegist = (params) => {
   const token = getToken();
-  if (getToken()) {
+  if (!token) {
     return Promise.reject('未登录');
   }
-  return http.put('/cp/user', params, {
+  return http.post('/cp/usr/regist', params, {
     header: {
       Authorization: `Bearer ${token}`,
     },

+ 2 - 2
components/SingleDropList/index.vue

@@ -37,7 +37,7 @@ export default {
     },
     placeholder: {
       type: String,
-      default: '选择参会企业',
+      default: '选择参会单位',
     }
   },
   data() {
@@ -51,7 +51,7 @@ export default {
     src: {
       handler(val) {
         if (val && val.length > 0 && this.defaultValue) {
-          const defItem = val.find((item) => item.value === this.defaultValue);
+          const defItem = val.find((item) => String(item.value) === this.defaultValue);
           if (defItem) {
             this.name = defItem.name;
           }

+ 2 - 2
package.json

@@ -38,8 +38,8 @@
 				"title": "微信开发版",
 				"env": {
 					"UNI_PLATFORM": "mp-weixin",
-					"UNI_FILE_PREFIX": "http://172.192.13.74:8080/tfc",
-					"UNI_API_PREFIX": "http://172.192.13.74:8080/tfc"
+					"UNI_FILE_PREFIX": "http://192.168.124.58:8080/tfc",
+					"UNI_API_PREFIX": "http://192.168.124.58:8080/tfc"
 				},
 				"define": {
 					"MP-WEIXIN": true

+ 3 - 0
pasb/pages/file/index.scss

@@ -39,6 +39,9 @@
       flex-grow: 1;
       .file-info-item-title {
         height: 70rpx;
+        line-height: 70rpx;
+        width: 500rpx;
+        word-break: break-word;
         box-sizing: border-box;
         font-family: "PingFangSC-Semibold", "PingFang SC Semibold", "PingFang SC", sans-serif;
         font-weight: 650;

+ 2 - 0
pasb/pages/file/index.vue

@@ -45,8 +45,10 @@ export default {
   created() {
   },
   onLoad() {
+    page = 1;
     this.loadmore();
   },
+
   methods: {
     fileIcon,
     getImageUrl,

+ 21 - 0
pasb/pages/login/index.scss

@@ -5,6 +5,27 @@
   flex-direction: column;
   justify-content: center;
   align-items: center;
+
+  .login-tel {
+     width: 600rpx;
+    height: 80rpx;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    border-radius: 50px;
+    box-sizing: border-box;
+    padding: 0 40rpx;
+    border: 1px solid rgba(84, 140, 247, 0.53);
+    margin-bottom: 40rpx;
+    &:focus-within {
+      border: 1px solid #548cf7;
+      /deep/ text {
+        color: #548cf7 !important;
+      }
+    }
+
+  }
+
   .login-btn{
     border: none;
     background-color: #548cf7;

+ 23 - 1
pasb/pages/login/index.vue

@@ -6,6 +6,18 @@
          backgroundSize: '100%',
        }"
   >
+    <view class="login-tel">
+      <u--input
+          prefixIcon="phone"
+          placeholder="输入手机号"
+          border="none"
+          type="number"
+          maxlength="11"
+          v-model="tel"
+      ></u--input>
+    </view>
+
+
     <button class="login-btn" open-type="getUserInfo" @getuserinfo="getUserInfo">
       <u-icon name="weixin-fill" color="#fefefe" size="28"></u-icon>
       一键微信登录
@@ -24,6 +36,7 @@ export default {
   data() {
     return {
       ICON_CFG,
+      tel: '',
     };
   },
   created() {
@@ -37,10 +50,19 @@ export default {
       if (e.mp.detail.userInfo) {
         this.userInfo = e.mp.detail.userInfo;
         this.hasUserInfo = true;
+        if (!uni.$u.test.mobile(this.tel)) {
+          uni.showToast({
+            title: '请输入正确的手机号',
+            icon: 'none',
+          });
+          return;
+        }
         const {
           success,
           data,
-        } = await syncWxlogin();
+        } = await syncWxlogin({
+          tel: this.tel,
+        });
         if (success) {
           // 将用户信息和session存储到本地
           setStorageObj('userInfo', data.user);

+ 3 - 1
pasb/pages/regist/index.scss

@@ -27,7 +27,9 @@
     padding: 20rpx;
     box-sizing: border-box;
     background-color: #fefefe;
-
+     /deep/ .form-content{
+       padding: 20rpx;
+     }
     /deep/ .u-form {
       .u-form-item {
         .u-form-item__body__left {

+ 27 - 16
pasb/pages/regist/index.vue

@@ -10,27 +10,28 @@
             :model="model1"
             :rules="rules"
             ref="uForm"
+            @submit="onSubmit"
         >
           <u-form-item
-              prop="userInfo.name"
+              prop="userInfo.usrName"
               borderBottom
-              ref="item1"
           >
             <u--input
                 prefixIcon="account"
-                v-model="model1.userInfo.name"
+                v-model="model1.userInfo.usrName"
                 border="none"
             ></u--input>
           </u-form-item>
           <u-form-item
               prop="userInfo.tel"
               borderBottom
-              ref="item1"
           >
             <u--input
                 prefixIcon="phone"
                 placeholder="输入手机号"
                 border="none"
+                type="number"
+                maxlength="11"
                 v-model="model1.userInfo.tel"
             ></u--input>
           </u-form-item>
@@ -57,18 +58,17 @@
             </u-radio-group>
           </u-form-item>
           <u-form-item
-              label="参会企业"
+              label="参会单位"
               prop="userInfo.enterpriseId"
               borderBottom
-              ref="item1"
           >
             <SingleDropList
                 :style="{
                 marginLeft: '20rpx'
               }"
-                defaultValue="1"
+                :defaultValue="model1.userInfo.enterpriseId"
                 :src="enterpriseList"
-                placeholder="请选择参会企业"
+                placeholder="请选择参会单位"
                 @onChange="enterpriseSelect"
             >
             </SingleDropList>
@@ -77,13 +77,12 @@
               label="参会行程"
               prop="userInfo.tripId"
               borderBottom
-              ref="item1"
           >
             <SingleDropList
                 :style="{
                 marginLeft: '20rpx'
               }"
-                defaultValue="1"
+                :defaultValue="model1.userInfo.tripId"
                 :src="tripList"
                 placeholder="请选择参会行程"
                 @onChange="enterpriseTripSelect"
@@ -121,7 +120,7 @@ export default {
   name: 'login',
   components: {
     AuthWrap,
-    SingleDropList
+    SingleDropList,
   },
   props: {},
   data() {
@@ -131,7 +130,7 @@ export default {
       loading: false,
       model1: {
         userInfo: {
-          name: '',
+          usrName: '',
           sex: '',
         },
       },
@@ -152,7 +151,7 @@ export default {
       enterpriseList: [],
       tripList: [],
       rules: {
-        'userInfo.name': {
+        'userInfo.usrName': {
           type: 'string',
           required: true,
           message: '请填写姓名',
@@ -176,7 +175,11 @@ export default {
     this.$refs.authWrap.reloadPage();
     const user = getUserInfo();
     if (user) {
-      this.model1.userInfo.name = user.usrName;
+      this.model1.userInfo.usrName = user.usrName;
+      this.model1.userInfo.tel = user.tel;
+      this.model1.userInfo.sex = user.sex;
+      this.model1.userInfo.enterpriseId = user.enterpriseId;
+      this.model1.userInfo.tripId = user.tripId;
     }
     this.init();
   },
@@ -192,7 +195,9 @@ export default {
       this.$refs.uForm.validateField('userInfo.enterpriseId');
     },
     enterpriseTripSelect(trip) {
-
+      this.model1.userInfo.tripId = trip.value;
+      this.model1.userInfo.enterpriseTripName = trip.name;
+      this.$refs.uForm.validateField('userInfo.tripId');
     },
     async init() {
       const {
@@ -221,8 +226,14 @@ export default {
       this.$refs.uForm.validate().then(res => {
         putUsrRegist(this.model1.userInfo);
         this.loading = false;
+        uni.showToast({
+          title: '报名完成',
+          icon: 'success',
+        });
+        uni.navigateBack({
+          delta: 1,
+        });
       }).catch(errors => {
-        uni.$u.toast('校验失败');
         this.loading = false;
       });
     },