Changpeng Duan 5 years ago
parent
commit
cbe958b4b5
3 changed files with 174 additions and 58 deletions
  1. 34 18
      pc/src/Global.js
  2. 116 9
      pc/src/views/Member.vue
  3. 24 31
      tv/.idea/workspace.xml

+ 34 - 18
pc/src/Global.js

@@ -97,6 +97,8 @@ globalcurrent = function () {
     return thisdata;
 };
 
+
+
 // 校验内容长度
 globalValid = function (data, mins, maxs, text, that) {
     let thisVal = data;
@@ -156,21 +158,21 @@ getNowDate = function () {
 globalcurrentWeek = function () {
     let weeks = new Date().getDay();
     let d = new Date().getDate();
-    return getNowDate() + ' ' + numberToWeekdays(weeks) + ' 第'+ getWeekOfYear() + '周';
+    return getNowDate() + ' ' + numberToWeekdays(weeks) + ' 第' + getWeekOfYear() + '周';
 }
 
- getWeekOfYear = function (){
+getWeekOfYear = function () {
     var today = new Date();
-    var firstDay = new Date(today.getFullYear(),0, 1);
+    var firstDay = new Date(today.getFullYear(), 0, 1);
     var dayOfWeek = firstDay.getDay();
-    var spendDay= 1;
-    if (dayOfWeek !=0) {
-        spendDay=7-dayOfWeek+1;
+    var spendDay = 1;
+    if (dayOfWeek != 0) {
+        spendDay = 7 - dayOfWeek + 1;
     }
-    firstDay = new Date(today.getFullYear(),0, 1+spendDay);
-    var d =Math.ceil((today.valueOf()- firstDay.valueOf())/ 86400000);
-    var result =Math.ceil(d/7);
-    return result+1;
+    firstDay = new Date(today.getFullYear(), 0, 1 + spendDay);
+    var d = Math.ceil((today.valueOf() - firstDay.valueOf()) / 86400000);
+    var result = Math.ceil(d / 7);
+    return result + 1;
 };
 
 // table配置项目
@@ -353,25 +355,39 @@ turnStdToOption = function (data) {
 numberToWeekdays = function (val) {
     switch (parseInt(val)) {
         case 1:
-            return '星期一'
+            return '星期一';
             break;
         case 2:
-            return '星期二'
+            return '星期二';
             break;
         case 3:
-            return '星期三'
+            return '星期三';
             break;
         case 4:
-            return '星期四'
+            return '星期四';
             break;
         case 5:
-            return '星期五'
+            return '星期五';
             break;
         case 6:
-            return '星期六'
+            return '星期六';
             break;
         case 0:
-            return '星期天'
+            return '星期天';
             break;
     }
-}
+};
+
+// 获取年份列表
+getyearOptions = function (val) {
+    let num = parseInt(val);
+    let res = [];
+    let item = {};
+    let curYear = new Date().getFullYear();
+    for (var i = 0; i < num; i++) {
+        item[i] = {
+            value: curYear - i, label: curYear - i + '年'
+        }
+    }
+    return item
+};

+ 116 - 9
pc/src/views/Member.vue

@@ -78,9 +78,12 @@
                 <el-table-column
                         prop="UserInfo.head"
                         label="头像"
-                        width="90"
                 >
-
+                    <template slot-scope="scope">
+                        <img :src="scope.row.UserInfo.Head" alt="" v-if="scope.row.UserInfo.Head" width="25px"
+                             height="25px">
+                        <img src="../assets/img/nav/head.png" alt="" v-else width="25px" height="25px">
+                    </template>
                 </el-table-column>
                 <el-table-column
                         prop="UserInfo.Name"
@@ -213,8 +216,9 @@
         <el-dialog :title="dialogTitle" :visible.sync="dialogMemberVisible"
                    :width="form.btnType == 1 ?'650px':'1200px'">
             <div class="dialogContent">
-                <div :class="['pull-left',{'tabwild':form.btnType == 1},]">
-                    <el-form ref="form" :model="form" label-width="160px">
+                <div :class="['pull-left',{'tabwild':form.btnType == 1}]">
+
+                    <el-form ref="form" :model="form" label-width="80px">
                         <el-form-item label="手机号" :required="true">
                             <el-input v-model="form.phone"></el-input>
                         </el-form-item>
@@ -242,10 +246,38 @@
                         <el-form-item label="备注">
                             <el-input v-model="form.memo"></el-input>
                         </el-form-item>
+                        <el-form-item label="身高" :required="true">
+                            <el-input v-model="form.height" placeholder="cm" type="number"></el-input>
+                        </el-form-item>
+                        <el-form-item label="体重" :required="true">
+                            <el-input v-model="form.weight" placeholder="kg" type="number"></el-input>
+                        </el-form-item>
+                        <el-form-item label="静态心率" :required="true">
+                            <el-input v-model="form.staticHr " placeholder="请输入" type="number"></el-input>
+                        </el-form-item>
+                        <el-form-item label="性别" :required="true">
+                            <el-select v-model="form.sex " placeholder="">
+                                <el-option
+                                        v-for="item in sexOptions"
+                                        :key="item.value"
+                                        :label="item.label"
+                                        :value="item.value"
+                                ></el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="出生年份" :required="true">
+                            <el-date-picker
+                                    v-model="form.birthday"
+                                    align="right"
+                                    type="date"
+                                    placeholder="选择日期"
+                            >
+                            </el-date-picker>
+                        </el-form-item>
                     </el-form>
                 </div>
                 <div class="pull-right" v-if="form.btnType == 0">
-                    <el-form ref="form" :model="form" label-width="160px">
+                    <el-form ref="form" :model="form" label-width="100px">
                         <el-form-item label="会员课程">
                             <el-transfer filterable v-model="form.classlist" :data="form.dialogdata"
                                          :titles="['全部课程','已选课程']"></el-transfer>
@@ -358,6 +390,11 @@
                 Takevalue: 0,
                 Takeoptions: [],
                 TakeHid: 0,
+                sexOptions: [
+                    {value: 1, label: '男'},//性别 1:男, 2:女
+                    {value: 2, label: '女'},
+                ],
+                yearOptions: getyearOptions(15),
                 // panel 配置项目
                 panel: {
                     usercode: '',
@@ -398,6 +435,11 @@
                     shopId: '',
                     Id: '',
                     userId: '',
+                    height: '',
+                    weight: '',
+                    staticHr: '',
+                    birthday: '',
+                    sex: 1,
                     vipType: 1,
                     normalhour: 0,
                     newnormalhour: 0,
@@ -488,11 +530,16 @@
                 this.form.phone = row.UserInfo.Phone;
                 this.form.name = row.UserInfo.Name;
                 this.form.memo = row.UserInfo.Memo;
+                this.form.height = row.UserInfo.Height;
+                this.form.weight = parseInt(row.UserInfo.Weight) / 10;
+                this.form.staticHr = row.UserInfo.StaticHr;
+                this.form.sex = row.UserInfo.Sex;
+                this.form.birthday = row.UserInfo.Birthday;
+                this.form.ubId = row.UserInfo.UbId;
                 this.form.btnType = 1;
-
                 this.form.shopId = row.UserInfo.ShopId;
                 this.form.Id = row.UserInfo.Id;
-                this.dialogMemberVisible = true
+                this.dialogMemberVisible = true;
                 this.dialogTitle = '编辑会员'
 
             },
@@ -677,6 +724,24 @@
                         return false
                     }
                 }
+
+                if (!that.form.height) {
+                    this.$message.error('错了哦,身高不能为空');
+                    return false
+                }
+                if (!that.form.weight) {
+                    this.$message.error('错了哦,体重不能为空');
+                    return false
+                }
+                if (!that.form.staticHr) {
+                    this.$message.error('错了哦,静态心率不能为空');
+                    return false
+                }
+                if (!that.form.birthday) {
+                    this.$message.error('错了哦,出生年份不能为空');
+                    return false
+                }
+
                 // 课程添加使用字符串形式
                 let curClasslist = '';
                 if (that.form.classlist) {
@@ -693,6 +758,11 @@
                     gifthour: that.form.gifthour,
                     classlist: curClasslist,
                     memo: that.form.memo,
+                    height: that.form.height,
+                    weight: that.form.weight,
+                    staticHr: that.form.staticHr,
+                    sex: that.form.sex,
+                    birthday: nonTfmtDatetoLength(that.form.birthday, 10),
                 };
                 let postdata = qs.stringify(param);
                 VipUserAdd(postdata).then(res => {
@@ -737,14 +807,38 @@
                         return false
                     }
                 }
+
+                if (!that.form.height) {
+                    this.$message.error('错了哦,身高不能为空');
+                    return false
+                }
+                if (!that.form.weight) {
+                    this.$message.error('错了哦,体重不能为空');
+                    return false
+                }
+                if (!that.form.staticHr) {
+                    this.$message.error('错了哦,静态心率不能为空');
+                    return false
+                }
+                if (!that.form.birthday) {
+                    this.$message.error('错了哦,出生年份不能为空');
+                    return false
+                }
                 let param = {
                     token: localStorage.token,
                     userId: that.form.Id,
                     phone: that.form.phone,
                     name: that.form.name,
                     memo: that.form.memo,
+                    height: that.form.height,
+                    weight: that.form.weight,
+                    staticHr: that.form.staticHr,
+                    sex: that.form.sex,
+                    birthday: nonTfmtDatetoLength(that.form.birthday, 10),
+                    ubId: that.form.ubId
                 };
                 let postdata = qs.stringify(param);
+                console.log(param);
                 VipUserEdit(postdata).then(res => {
                     let json = res;
                     if (json.Code == 0) {
@@ -1150,12 +1244,12 @@
     }
 
     .dialogContent .pull-left {
-        width: 30%;
+        width: 40%;
         float: left;
     }
 
     .dialogContent .pull-right {
-        width: 70%;
+        width: 60%;
         float: right;
     }
 
@@ -1197,4 +1291,17 @@
         overflow: scroll;
 
     }
+
+    .pull-left /deep/ .el-form .el-form-item {
+        width: 50%;
+        float: left;
+    }
+
+    .pull-left /deep/ .el-form-item__content {
+        margin-left: 20px;
+    }
+
+    .pull-left .el-input-number {
+        width: 130px;
+    }
 </style>

+ 24 - 31
tv/.idea/workspace.xml

@@ -24,23 +24,16 @@
   <component name="ChangeListManager">
     <list default="true" id="c813a37b-038b-4bb1-a925-c03a432a7638" name="Default Changelist" comment="">
       <change afterPath="$PROJECT_DIR$/../pc/src/components/upHead.vue" afterDir="false" />
-      <change afterPath="$PROJECT_DIR$/src/components/upimg.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/README.md" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/README.md" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/Global.js" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/Global.js" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/api/Navs.js" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/api/Navs.js" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/api/getApiRes.js" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/api/getApiRes.js" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/src/assets/css/panel.css" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/assets/css/panel.css" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/src/views/Main.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/Main.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/../pc/src/components/Navside.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/components/Navside.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/../pc/src/router/index.js" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/router/index.js" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/views/Member.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/Member.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/../pc/src/views/Test.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/Test.vue" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/../pc/src/views/bindRecord.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/bindRecord.vue" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/views/courseEdit.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/courseEdit.vue" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/../pc/src/views/courses.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/courses.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/src/views/finishDetail.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/finishDetail.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/src/views/heartEquip.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/heartEquip.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/../pc/src/views/region.vue" beforeDir="false" afterPath="$PROJECT_DIR$/../pc/src/views/region.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/views/Main.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/Main.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/views/Rank.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/Rank.vue" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/views/Wait.vue" beforeDir="false" afterPath="$PROJECT_DIR$/src/views/Wait.vue" afterDir="false" />
     </list>
     <ignored path="$PROJECT_DIR$/.tmp/" />
     <ignored path="$PROJECT_DIR$/temp/" />
@@ -53,20 +46,20 @@
   </component>
   <component name="FileEditorManager">
     <leaf>
-      <file pinned="false" current-in-tab="false">
+      <file pinned="false" current-in-tab="true">
         <entry file="file://$PROJECT_DIR$/src/views/Wait.vue">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="660">
+            <state relative-caret-position="213">
               <caret line="347" column="29" lean-forward="true" selection-start-line="334" selection-start-column="26" selection-end-line="347" selection-end-column="29" />
             </state>
           </provider>
         </entry>
       </file>
-      <file pinned="false" current-in-tab="true">
+      <file pinned="false" current-in-tab="false">
         <entry file="file://$PROJECT_DIR$/src/views/Main.vue">
           <provider selected="true" editor-type-id="text-editor">
-            <state relative-caret-position="357">
-              <caret line="259" column="18" selection-start-line="259" selection-start-column="4" selection-end-line="259" selection-end-column="18" />
+            <state relative-caret-position="462">
+              <caret line="258" column="10" lean-forward="true" selection-start-line="258" selection-start-column="10" selection-end-line="258" selection-end-column="10" />
               <folding>
                 <element signature="e#5168#5212#0" expanded="true" />
               </folding>
@@ -116,8 +109,8 @@
       <find>wait</find>
       <find>timer2</find>
       <find>OpenEgg</find>
-      <find>createEgg</find>
       <find>timer</find>
+      <find>createEgg</find>
     </findStrings>
     <replaceStrings>
       <replace>0.2rem</replace>
@@ -126,8 +119,8 @@
       <replace>eqSn</replace>
       <replace>JSON.stringify(e.uuid)</replace>
       <replace>rankTimer</replace>
-      <replace>mainTimer</replace>
       <replace>waitTimer</replace>
+      <replace>mainTimer</replace>
     </replaceStrings>
   </component>
   <component name="Git.Settings">
@@ -329,7 +322,7 @@
       <workItem from="1605406240238" duration="51039000" />
       <workItem from="1605668164423" duration="15041000" />
       <workItem from="1605747566783" duration="13000" />
-      <workItem from="1605775278675" duration="35561000" />
+      <workItem from="1605775278675" duration="36812000" />
     </task>
     <task id="LOCAL-00001" summary="test web">
       <created>1605431368250</created>
@@ -426,7 +419,7 @@
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="265653000" />
+    <option name="totallyTimeSpent" value="266904000" />
   </component>
   <component name="ToolWindowManager">
     <frame x="-1287" y="0" width="1294" height="1386" extended-state="1" />
@@ -436,7 +429,7 @@
       <window_info id="Structure" order="1" side_tool="true" weight="0.24973656" />
       <window_info id="Favorites" order="2" side_tool="true" weight="0.32982087" />
       <window_info id="npm" order="3" side_tool="true" />
-      <window_info anchor="bottom" id="TypeScript" />
+      <window_info anchor="bottom" id="TypeScript" weight="0.3293718" />
       <window_info anchor="bottom" id="Message" order="0" />
       <window_info anchor="bottom" id="Find" order="1" weight="0.32687446" />
       <window_info anchor="bottom" id="Run" order="2" sideWeight="0.49920255" weight="0.31086773" />
@@ -447,7 +440,7 @@
       <window_info anchor="bottom" id="PHP-CGI Server" order="7" />
       <window_info anchor="bottom" id="Event Log" order="8" sideWeight="0.50079745" side_tool="true" weight="0.3319185" />
       <window_info anchor="bottom" id="Version Control" order="9" weight="0.3285594" />
-      <window_info anchor="bottom" id="Terminal" order="10" visible="true" weight="0.17487267" />
+      <window_info anchor="bottom" id="Terminal" order="10" weight="0.17487267" />
       <window_info anchor="bottom" id="Database Changes" order="11" />
       <window_info anchor="right" id="Commander" order="0" weight="0.4" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
@@ -755,13 +748,6 @@
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/views/Wait.vue">
-      <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="660">
-          <caret line="347" column="29" lean-forward="true" selection-start-line="334" selection-start-column="26" selection-end-line="347" selection-end-column="29" />
-        </state>
-      </provider>
-    </entry>
     <entry file="file://$PROJECT_DIR$/src/views/Rank.vue">
       <provider selected="true" editor-type-id="text-editor">
         <state relative-caret-position="177">
@@ -788,13 +774,20 @@
     </entry>
     <entry file="file://$PROJECT_DIR$/src/views/Main.vue">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="357">
-          <caret line="259" column="18" selection-start-line="259" selection-start-column="4" selection-end-line="259" selection-end-column="18" />
+        <state relative-caret-position="462">
+          <caret line="258" column="10" lean-forward="true" selection-start-line="258" selection-start-column="10" selection-end-line="258" selection-end-column="10" />
           <folding>
             <element signature="e#5168#5212#0" expanded="true" />
           </folding>
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/src/views/Wait.vue">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="213">
+          <caret line="347" column="29" lean-forward="true" selection-start-line="334" selection-start-column="26" selection-end-line="347" selection-end-column="29" />
+        </state>
+      </provider>
+    </entry>
   </component>
 </project>