소스 검색

ck往右移动 √
8.duRs里也应该把 is_tmp_user 字段拼接进来。√
2.课程管理 单独添加,绑定,删除临时会员 (临时会员,单条增加,定一下怎么加?√
增加手机号字段√

Changpeng Duan 5 년 전
부모
커밋
2824a72774

+ 14 - 0
pc/src/Global.js

@@ -290,6 +290,20 @@ turnResToOptionBySimViper = function (data) {
     });
     return ids
 };
+
+turnResToOptionByTempUser = function (data) {
+    if (!data) return false;
+    let ids = data.map(item => {
+        return {
+            label: item.UserName + ' ' + item.Phone,
+            key: parseInt(item.TuId),
+            value: parseInt(item.TuId),
+            RemainHour: parseInt(item.RemainHour),
+        }
+    });
+    return ids
+};
+
 turnResToOptionByCoach = function (data) {
     if (!data) return false;
     let ids = data.map(item => {

+ 1 - 1
pc/src/api/Navs.js

@@ -22,7 +22,7 @@ let navs = [
     {
         "clmid": "33",
         "clmcode": "tempUser",
-        "clmname": "临时用户",
+        "clmname": "临时会员",
         "clmurl": "/tempUser",
         "prname": "",
         "show": 3,

+ 17 - 0
pc/src/api/getApiRes.js

@@ -828,3 +828,20 @@ export function TmpUserQuery(postdata) {
     let url = headapi + 'v1/User/TmpUserQuery ';
     return getApiBasic(url, postdata);
 }
+
+// 2020/12/22
+// 课堂中临时会员添加
+export function ClassOverTmpDetailAdd(postdata) {
+    let url = headapi + 'v1/SchoolTimeTable/ClassOverTmpDetailAdd ';
+    return getApiBasic(url, postdata);
+}
+// 课程中临时会员增加后又删除
+export function ClassTmpUserOverDetailDel(postdata) {
+    let url = headapi + 'v1/SchoolTimeTable/ClassTmpUserOverDetailDel ';
+    return getApiBasic(url, postdata);
+}
+// 心率带绑定临时会员
+export function BindHrSensorsToTempUser(postdata) {
+    let url = headapi + 'v1/HrSensors/BindHrSensorsToTempUser ';
+    return getApiBasic(url, postdata);
+}

+ 16 - 3
pc/src/main.js

@@ -10,15 +10,28 @@ import axios from 'axios'
 
 Vue.config.productionTip = false;
 import VCharts from 'v-charts'
+
 Vue.use(VCharts);
 Vue.use(ElementUI);
 
+let headBpi = 'http://cal.beswell.com:85/';
+if (process.env.NODE_ENV === 'development') {
+    // 显示控制台
+    // let vConsole = new VConsole();
+    // 演示版本数据
+    // require('./Mock/index.js');
+    headBpi = '/bpi/';
+} else {
+    // let vConsole = new VConsole();
+    headBpi = 'http://cal.beswell.com:85/'
+}
+
 // 演示版本数据
 require('./Mock/index.js');
 
 new Vue({
-  router,
-  store,
-  render: h => h(App)
+    router,
+    store,
+    render: h => h(App)
 }).$mount('#app');
 

+ 1 - 1
pc/src/router/index.js

@@ -42,7 +42,7 @@ const routes = [
                 name: 'tempUser',
                 component: () => import('@/views/tempUser.vue'),
                 meta: {
-                    title: "临时用户",
+                    title: "临时会员",
                     clmid: "33",
                 }
             },{

+ 1 - 1
pc/src/views/classInfoDetail.vue

@@ -157,7 +157,7 @@
         methods: {
             goBack() {
                 this.$router.push({
-                    path: '/courses', query: {}
+                    path: '/coursesHistory', query: {}
                 });
             },
             // 页面数据查询

+ 218 - 33
pc/src/views/courseEdit.vue

@@ -22,14 +22,16 @@
                             <el-input v-model="panel.phone" placeholder="请输入手机号" type="number"></el-input>
                         </el-col>
                         <el-col :span="4">
-                            <el-button size="" type="primary" @click="query" plain :disabled="serachBtnStatus" :loading="serachBtnStatus">查询
+                            <el-button size="" type="primary" @click="query" plain :disabled="serachBtnStatus"
+                                       :loading="serachBtnStatus">查询
                             </el-button>
                         </el-col>
                     </el-row>
                 </div>
             </div>
             <div class="change">
-                <el-button @click="confirmBegin" type="primary" :disabled="BeginState" :loading="BeginState" v-if="FinishClass == 3">确认上课
+                <el-button @click="confirmBegin" type="primary" :disabled="BeginState" :loading="BeginState"
+                           v-if="FinishClass == 3">确认上课
                 </el-button>
                 <el-button @click="addFinish" type="primary" v-if="FinishClass == 2">确认下课</el-button>
                 <el-button @click="addFinishMember">添加上课会员</el-button>
@@ -122,6 +124,8 @@
                         sortable
                 >
                     <template slot-scope="scope">
+
+                        <!--正式会员-->
                         <el-select v-model="scope.row.group_no"
                                    filterable
                                    :disabled="FinishClass == 2 && scope.row.DpId != 0"
@@ -141,24 +145,47 @@
                         sortable
                 >
                     <template slot-scope="scope">
-                        <el-select v-model="scope.row.BindId"
-                                   @change="bindSensorToUser(scope.row)"
-                                   @focus="getSelectHrSensors(scope.row)"
-                                   filterable
-                                   v-if="!scope.row.BindId" placeholder="请选心率带">
-                            <el-option
-                                    v-for="item in panel.bindList"
-                                    :key="item.index"
-                                    :label="item.label"
-                                    :value="item.HrId">
-                            </el-option>
-                        </el-select>
+                        <div v-if="scope.row.IsTmpUser != 1">
+                            <el-select v-model="scope.row.BindId"
+                                       @change="bindSensorToUser(scope.row)"
+                                       @focus="getSelectHrSensors(scope.row)"
+                                       filterable
+                                       v-if="!scope.row.BindId" placeholder="请选心率带">
+                                <el-option
+                                        v-for="item in panel.bindList"
+                                        :key="item.index"
+                                        :label="item.label"
+                                        :value="item.HrId">
+                                </el-option>
+                            </el-select>
 
-                        <el-button @click="takeBack(scope.row)" type="danger" v-if="scope.row.BindId"
-                                   icon="el-icon-cpu">
-                            {{ scope.row.Sn }}
-                            设备收回
-                        </el-button>
+                            <el-button @click="takeBack(scope.row)" type="danger" v-if="scope.row.BindId"
+                                       icon="el-icon-cpu">
+                                {{ scope.row.Sn }}
+                                设备收回
+                            </el-button>
+                        </div>
+                        <div v-if="scope.row.IsTmpUser == 1">
+                            <!--临时会员-->
+                            <el-select v-model="scope.row.BindId"
+                                       @change="bindSensorToTmepUser(scope.row)"
+                                       @focus="getSelectHrSensors(scope.row)"
+                                       filterable
+                                       v-if="!scope.row.Sn" placeholder="请选心率带">
+                                <el-option
+                                        v-for="item in panel.bindList"
+                                        :key="item.index"
+                                        :label="item.label"
+                                        :value="item.HrId">
+                                </el-option>
+                            </el-select>
+
+                            <el-button @click="takeTempBack(scope.row)" type="danger" v-if="scope.row.Sn"
+                                       icon="el-icon-cpu">
+                                {{ scope.row.Sn }}
+                                临时设备收回
+                            </el-button>
+                        </div>
                     </template>
                 </el-table-column>
                 <el-table-column
@@ -201,6 +228,22 @@
                                 </el-button>
                             </em>
                         </div>
+                        <div v-if="FinishClass != 2 && scope.row.IsTmpUser == 1">
+                            <el-button type="danger" round v-if="scope.row.Status == 3 "
+                                       size="mini"
+                                       @click="getClassOverTempDel(scope.row)">
+                                删除
+                            </el-button>
+                        </div>
+                        <div v-if="FinishClass != 3 && scope.row.IsTmpUser == 1">
+                            <el-button type="warning" round
+                                       v-if="scope.row.Status == 1 || scope.row.Status == 3 && FinishClass == 2 "
+                                       size="mini"
+                                       :disabled="scope.row.HrSubmitFlag == 1"
+                                       @click="getClassDetailAndSnAdd(scope.row)">
+                                提交
+                            </el-button>
+                        </div>
                     </template>
                 </el-table-column>
             </el-table>
@@ -221,7 +264,9 @@
                 </div>
             </div>
             <div class="dialogFooter">
-                <el-button type="primary" size="small" :disabled="BtnConfirmMember" :loading="BtnConfirmMember" @click="confirmMember">确定</el-button>
+                <el-button type="primary" size="small" :disabled="BtnConfirmMember" :loading="BtnConfirmMember"
+                           @click="confirmMember">确定
+                </el-button>
                 <el-button size="small" @click="dialogVisible = false">取消</el-button>
             </div>
         </el-dialog>
@@ -229,12 +274,14 @@
             <div class="dialogContent viplist">
                 <span class="blueTitle">{{ ClassName }} {{ BeginTime }}</span>
                 <div>
-                    <el-transfer filterable v-model="dialogValue" :data="form.dialogdata"
+                    <el-transfer filterable v-model="dialogTempValue" :data="form.dialogTempdata"
                                  :titles="['临时会员', '已添加会员']"></el-transfer>
                 </div>
             </div>
             <div class="dialogFooter">
-
+                <el-button type="primary" size="small" :disabled="BtnTempConfirmMember" :loading="BtnTempConfirmMember"
+                           @click="TempconfirmMember">确定
+                </el-button>
                 <el-button size="small" @click="dialogTempVisible = false">取消</el-button>
             </div>
         </el-dialog>
@@ -254,7 +301,8 @@
                 </div>
             </div>
             <div class="dialogFooter">
-                <el-button type="primary" size="small" :disabled="BtnConfirmClassFinish" :loading="BtnConfirmClassFinish" @click="confirmClassFinish">确定
+                <el-button type="primary" size="small" :disabled="BtnConfirmClassFinish"
+                           :loading="BtnConfirmClassFinish" @click="confirmClassFinish">确定
                 </el-button>
                 <el-button size="small" @click="dialogFinishVisible = false">取消</el-button>
             </div>
@@ -279,6 +327,10 @@
         ClassStartConfirm,
         ShopManagerListQuery,
         ClassOverConfirm,
+        TmpUserQuery,
+        ClassOverTmpDetailAdd,
+        ClassTmpUserOverDetailDel,
+        BindHrSensorsToTempUser,
     } from "../api/getApiRes";
 
     let qs = require('qs');
@@ -288,6 +340,7 @@
                 serachBtnStatus: false,
                 BtnConfirmClassFinish: false,
                 BtnConfirmMember: false,
+                BtnTempConfirmMember: false,
                 BeginState: true,//确认上课
                 tableData: [],
                 title: '',
@@ -305,6 +358,7 @@
                 dialogTitle: '新增会员',
                 current: getNowDate(),
                 dialogValue: [],
+                dialogTempValue: [],
                 dialogCoachValue: [],
                 BeginTime: '',
                 ClassName: '',
@@ -372,6 +426,7 @@
                     memo: '',
                     expTime: '',
                     dialogdata: [],//穿梭待选
+                    dialogTempdata: [],//穿梭待选
                     dialogValue: [],//穿梭已选
                     dialogCoachdata: [],//穿梭已选
                 },
@@ -437,6 +492,40 @@
                     }
                 })
             },
+            // 临时会员绑定心率带
+            bindSensorToTmepUser(row) {
+                let that = this;
+                let obj = {};
+                obj = this.panel.bindList.find((item) => {
+                    return item.HrId === row.BindId;
+                });
+                // let oldSn = row.BindId == 0 ? row.Sn : '';
+                let param = {
+                    token: localStorage.token,
+                    sn: obj.Sn,
+                    cfId: row.CfId,
+                    userId: row.UserId,
+                    shopId: localStorage.shopId,
+                    hrId: row.BindId,
+                };
+                let postdata = qs.stringify(param);
+                BindHrSensorsToTempUser(postdata).then(res => {
+                    let json = res;
+                    if (json.Code == 0) {
+                        that.$message({
+                            showClose: true,
+                            message: '临时会员心率带绑定成功!',
+                            type: 'success'
+                        });
+                        // table 重载
+                        that.getTableQuery();
+                        // 重置心率带可选列表
+                        // that.getSelectHrSensors();
+                    } else {
+                        that.$message.error(json.Memo + '错误码:' + json.Code);
+                    }
+                })
+            },
             // 设备回收
             takeBack(row) {
                 let that = this;
@@ -482,6 +571,9 @@
                     });
                 });
             },
+            takeTempBack(){
+                this.$message.error('临时会员无法替换心率带,请删除临时会员后重新添加');
+            },
             // 确认下课
             addFinish() {
                 this.clearForm();
@@ -552,7 +644,7 @@
                 let that = this;
                 // 没绑心率带不能开课,预约未到的不管他
                 for (var i = 0; i < this.tableData.length; i++) {
-                    if (this.tableData[i].BindId == 0 && this.tableData[i].Status != 2) {
+                    if (this.tableData[i].Sn == 0 && this.tableData[i].Status != 2) {
                         that.$message.error("会员" + this.tableData[i].Name + '没绑心率带,不能开课');
                         return false
                     }
@@ -597,6 +689,7 @@
                         weight: row.Weight,
                         user_md5: row.UserMd5,
                         birthday: row.Birthday,
+                        is_tmp_user: row.IsTmpUser,
                     }
                 }
                 // 确认上课
@@ -640,28 +733,53 @@
                 this.clearForm();
                 this.getClassVipuserQuery();
                 this.dialogValue = [];
+
+                // 遍历已添加的上课会员,回填穿梭框
                 let std = [];
                 if (this.tableData) {
                     this.tableData.map(function (item) {
-                        std.push(item.UserId)
+                        if(item.IsTmpUser != 1){
+                            std.push(item.UserId)
+                        }
                     })
                 }
                 that.dialogValue = std;
                 this.dialogVisible = true
             },
+            // 获取临时会员列表
+            getTmpUserQuery() {
+                let that = this;
+                let param = {
+                    token: localStorage.token,
+                    start: 1,
+                    tableMax: 999,
+                };
+                let postdata = qs.stringify(param);
+                TmpUserQuery(postdata).then(res => {
+                    let json = res;
+                    if (json.Code == 0) {
+                        that.form.dialogTempdata = turnResToOptionByTempUser(json.Rs);
+                    } else {
+                        that.$message.error(json.Memo);
+                    }
+                })
+            },
             // 添加临时会员
             addTempMember() {
                 let that = this;
                 this.clearForm();
-                this.getClassVipuserQuery();
-                this.dialogValue = [];
+                // this.getClassVipuserQuery();
+                this.getTmpUserQuery();
+                this.dialogTempValue = [];
                 let std = [];
                 if (this.tableData) {
                     this.tableData.map(function (item) {
-                        std.push(item.UserId)
+                        if(item.IsTmpUser == 1){
+                            std.push(item.UserId)
+                        }
                     })
                 }
-                that.dialogValue = std;
+                that.dialogTempValue = std;
                 this.dialogTempVisible = true
             },
             clearForm() {
@@ -685,17 +803,15 @@
                     if (json.Code == 0) {
                         // that.form.dialogdata = turnResToOptionByViper(json.Rs);
                         that.form.dialogdata = turnResToOptionBySimViper(json.Rs);
-                        console.log(that.form.dialogdata);
                     } else {
                         that.$message.error(json.Memo + '错误码:' + json.Code);
                     }
                 })
             },
-            // 确认提交课会员
+            // 确认提交课会员
             confirmMember() {
                 let that = this;
-                console.log(that.BtnConfirmMember);
-                if(  that.BtnConfirmMember == true) return false
+                if (that.BtnConfirmMember == true) return false;
                 that.BtnConfirmMember = true;
                 // checkNum
                 let userlist = that.dialogValue.toString();
@@ -724,6 +840,39 @@
                         that.BtnConfirmMember = false;
                     }
 
+                })
+            },   // 确认提交临时会员
+            TempconfirmMember() {
+                let that = this;
+                if (that.BtnTempConfirmMember == true) return false;
+                that.BtnTempConfirmMember = true;
+                // checkNum
+                let userlist = that.dialogTempValue.toString();
+                let param = {
+                    token: localStorage.token,
+                    stdId: this.$route.query.StdId,
+                    tmpuserlist: userlist
+                };
+                let postdata = qs.stringify(param);
+                // 下课记录详情添加
+                ClassOverTmpDetailAdd(postdata).then(res => {
+                    let json = res;
+                    if (json.Code == 0) {
+                        // 关闭弹窗
+                        that.dialogTempVisible = false;
+                        // 重载列表
+                        that.getTableQuery();
+                        that.$message({
+                            showClose: true,
+                            message: '会员添加成功!',
+                            type: 'success'
+                        });
+                        that.BtnTempConfirmMember = false;
+                    } else {
+                        that.$message.error(json.Memo + '错误码:' + json.Code);
+                        that.BtnTempConfirmMember = false;
+                    }
+
                 })
             },
             pauseRow(row, status) {
@@ -750,6 +899,7 @@
                     }
                 })
             },
+
             // 下课记录详情删除
             getClassOverDetailDel(row) {
                 let that = this;
@@ -784,6 +934,40 @@
                     });
                 });
             },
+            // 下课记录临时会员删除
+            getClassOverTempDel(row) {
+                let that = this;
+                let param = {
+                    token: localStorage.token,
+                    stdId: row.StdId,
+                    tcfId: row.CfId,
+                };
+                this.$confirm('是否删除临时会员  ' + row.Name + '?', '提示', {
+                    confirmButtonText: '确定',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                    let postdata = qs.stringify(param);
+                    ClassTmpUserOverDetailDel(postdata).then(res => {
+                        let json = res;
+                        if (json.Code == 0) {
+                            that.$message({
+                                showClose: true,
+                                message: '当前临时会员上课记录已删除!',
+                                type: 'success'
+                            });
+                            that.getTableQuery();
+                        } else {
+                            that.$message.error(json.Memo + '错误码:' + json.Code);
+                        }
+                    })
+                }).catch(() => {
+                    this.$message({
+                        type: 'info',
+                        message: '已取消删除'
+                    });
+                });
+            },
             // 查询按钮
             query() {
                 let that = this;
@@ -992,6 +1176,7 @@
                     weight: row.Weight,
                     user_md5: row.UserMd5,
                     birthday: row.Birthday,
+                    is_tmp_user: row.IsTmpUser,
                 };
                 duRs = '{"Rs":' + JSON.stringify(duRs).toString() + '}';
                 let that = this;

+ 45 - 17
pc/src/views/tempUser.vue

@@ -71,6 +71,12 @@
                         width="90"
                 >
                 </el-table-column>
+                <el-table-column
+                        prop="Phone"
+                        label="手机号"
+                        width="110"
+                >
+                </el-table-column>
                 <el-table-column
                         prop="StaticHr"
                         label="静态心率"
@@ -167,6 +173,9 @@
             <div class="dialogContent">
                 <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>
                         <el-form-item label="会员名" :required="true">
                             <el-input v-model="form.name"></el-input>
                         </el-form-item>
@@ -179,7 +188,7 @@
                         <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="静态心率" >
+                        <el-form-item label="静态心率">
                             <el-input v-model="form.staticHr" placeholder="请输入" type="number"></el-input>
                         </el-form-item>
                         <el-form-item label="性别" :required="true">
@@ -192,6 +201,15 @@
                                 ></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-item label="头像">
                             <div class="upload">
                                 <el-upload
@@ -206,20 +224,12 @@
                                 <ImgCutter v-on:cutDown="cutDown"></ImgCutter>
                             </div>
                         </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>
             <div class="dialogFooter">
-                <el-button :disabled="addDisabled" :loading="addDisabled" type="primary" size="small" v-if="form.btnType == 0"
+                <el-button :disabled="addDisabled" :loading="addDisabled" type="primary" size="small"
+                           v-if="form.btnType == 0"
                            @click="confirmMember">确定
                 </el-button>
                 <el-button type="primary" size="small" v-if="form.btnType == 1" @click="confirmEditMember">确定
@@ -353,7 +363,7 @@
 
                 let param = {
                     token: localStorage.token,
-                    tuId : detectorid,
+                    tuId: detectorid,
                 };
                 let postdata = qs.stringify(param);
 
@@ -390,6 +400,14 @@
             confirmMember() {
                 let that = this;
                 // checkNum
+                if (!that.form.phone) {
+                    this.$message.error('错了哦,手机号不能为空');
+                    return false
+                }
+                if (!globalCheckPhone(that.form.phone)) {
+                    this.$message.error('错了哦,手机号格式不正确');
+                    return false
+                }
                 if (!that.form.name) {
                     this.$message.error('错了哦,会员名不能为空');
                     return false
@@ -404,7 +422,6 @@
                         return false
                     }
                 }
-
                 if (!that.form.height) {
                     this.$message.error('错了哦,身高不能为空');
                     return false
@@ -426,6 +443,7 @@
                 let param = {
                     token: localStorage.token,
                     shopId: localStorage.shopId,
+                    phone: that.form.phone,
                     name: that.form.name,
                     sex: that.form.sex,
                     birthday: nonTfmtDatetoLength(that.form.birthday, 10),
@@ -457,6 +475,7 @@
             editMember(row) {
                 let that = this;
                 this.clearForm();
+                this.form.phone = row.Phone;
                 this.form.name = row.UserName;
                 this.form.memo = row.Memo;
                 this.imageUrl = row.Head;
@@ -465,7 +484,7 @@
                 this.form.staticHr = row.StaticHr;
                 this.form.sex = row.Sex;
                 this.form.birthday = row.Birthday;
-                this.form.tuId  = row.TuId;
+                this.form.tuId = row.TuId;
                 this.form.btnType = 1;
                 this.form.shopId = localStorage.shopId;
                 this.form.Id = row.Id;
@@ -476,6 +495,14 @@
             confirmEditMember() {
                 let that = this;
                 // checkNum
+                if (!that.form.phone) {
+                    this.$message.error('错了哦,手机号不能为空');
+                    return false
+                }
+                if (!globalCheckPhone(that.form.phone)) {
+                    this.$message.error('错了哦,手机号格式不正确');
+                    return false
+                }
                 if (!that.form.name) {
                     this.$message.error('错了哦,会员名不能为空');
                     return false
@@ -509,7 +536,7 @@
                 }
                 let param = {
                     token: localStorage.token,
-                    shopId : that.form.shopId ,
+                    shopId: that.form.shopId,
                     userId: that.form.Id,
                     phone: that.form.phone,
                     name: that.form.name,
@@ -520,7 +547,7 @@
                     staticHr: that.form.staticHr,
                     sex: that.form.sex,
                     birthday: nonTfmtDatetoLength(that.form.birthday, 10),
-                    tuId : that.form.tuId
+                    tuId: that.form.tuId
                 };
                 let postdata = qs.stringify(param);
                 TmpUserEdit(postdata).then(res => {
@@ -552,7 +579,7 @@
                 }
                 return isJPG && isLt2M
             },
-            cutDown(e){
+            cutDown(e) {
                 console.log(e);
                 this.imageUrl = e.dataURL;
                 this.upqiniu(e);
@@ -741,6 +768,7 @@
     .change button.pull-right {
         float: right;
     }
+
     .dialogContent {
         width: 100%;
         overflow: hidden;

+ 8 - 6
pc/src/views/versionControlMefisto.vue

@@ -67,8 +67,10 @@
         data() {
             return {
                 trueApi: {
-                    UpVueFramework: 'http://cal.beswell.com:85/v1/Sensors/UpVueFramework',
-                    QueryVueFramework: 'http://cal.beswell.com:85/v1/Sensors/QueryVueFramework',
+                    // UpVueFramework: 'http://cal.beswell.com:85/v1/Sensors/UpVueFramework',
+                    // QueryVueFramework: 'http://cal.beswell.com:85/v1/Sensors/QueryVueFramework',
+                    UpVueFramework: '/bpi/v1/Sensors/UpVueFramework',
+                    QueryVueFramework: '/bpi/v1/Sensors/QueryVueFramework',
                 },
                 falseApi: {
                     UpVueFramework: 'http://192.168.0.3:19096/v1/Sensors/UpVueFramework',
@@ -126,10 +128,10 @@
                 axios.post(url, postdata).then(function (data) {
                     let json = data.data;
                     if (json.Code == 0) {
-                        that.Version = json.Version;
-                        that.CreatedAt = json.CreatedAt;
-                        that.FileName = json.FileName;
-                        that.UpdateContent = json.UpdateContent;
+                        that.Version = json.VueFramework.Version;
+                        that.CreatedAt = json.VueFramework.CreatedAt;
+                        that.FileName = json.VueFramework.FileName;
+                        that.UpdateContent = json.VueFramework.UpdateContent;
                     } else {
                         console.log(json.Memo);
                     }

+ 5 - 5
tv/src/Mock/index.js

@@ -351,7 +351,7 @@ let getClassStat = function (ClassOn, dp) {
     };
 };
 
-let t = 0;//0 is on 1 is off
+let t = 1;//0 is on 1 is off
 if (t == 0) {
     // 列表测试
     Mock.mock('/api/testTable', 'post', testTable());
@@ -361,17 +361,17 @@ if (t == 0) {
     let curheadapi = 'http://192.168.0.63:8080/';
 
     // 0: 下课 团课/私教/PK 的排名
-    let LessonClass = 1;
+    let LessonClass = 3;
     // 1:团课/私教
     // 2:竞技课2PK
     // 3:竞技课threepk
-    let LessonDp = 0;
+    let LessonDp = 3;
 
 
     if (LessonClass == 1) {
         // 上团课
         Mock.mock(curheadapi + 'ClassStatQuery', 'post', getClassStat(1, 1));
-        Mock.mock(curheadapi + 'UserListInfo', 'post', testStudent(2, 1));
+        Mock.mock(curheadapi + 'UserListInfo', 'post', testStudent(21, 1));
     } else if (LessonClass == 2) {
         // 上2队PK课
         Mock.mock(curheadapi + 'ClassStatQuery', 'post', getClassStat(1, 2));
@@ -379,7 +379,7 @@ if (t == 0) {
     } else if (LessonClass == 3) {
         // 上3队PK课
         Mock.mock(curheadapi + 'ClassStatQuery', 'post', getClassStat(1, 3));
-        Mock.mock(curheadapi + 'UserListInfo', 'post', testStudent(6, 3));
+        Mock.mock(curheadapi + 'UserListInfo', 'post', testStudent(12, 3));
     } else if (LessonClass == 0) {
         // 下课
         if (LessonDp == 0) {

+ 3 - 3
tv/src/views/Main.vue

@@ -985,7 +985,7 @@
 
     .two .bottomLi .step {
         width: 26%;
-        padding-right: 4%;
+        padding-right: 1%;
     }
 
     .two .cla em.plus {
@@ -1715,7 +1715,7 @@
 
     .sixteen .bottomLi .step {
         width: 27%;
-        padding-right: 3%;
+        padding-right: 2%;
         /*text-align: center;*/
     }
 
@@ -1834,7 +1834,7 @@
 
     .twenty .bottomLi .step {
         width: 28%;
-        padding-right: 3%;
+        padding-right: 2%;
     }
 
     .twenty .cla em.plus {

+ 3 - 4
tv/src/views/threepk.vue

@@ -487,7 +487,6 @@
                     // 限制最大
                     let pkval = parseInt((redFmtSum / sumMax) * 100) > 100 ? 100 : parseInt((redFmtSum / sumMax) * 100);
                     let yellowVal = parseInt((yellowFmtSum / sumMax) * 100) > 100 ? 100 : parseInt((yellowFmtSum / sumMax) * 100);
-                    console.log('that.pkVal:' + that.pkVal);
                     that.pkVal = pkval.toFixed(1) + '%';
                     that.yellowVal = yellowVal.toFixed(1) + '%';
                 }
@@ -538,7 +537,6 @@
                         numberClass = 'four';
                         break;
                     case  parseInt(res.length) <= 6 && parseInt(res.length) > 4:
-                        console.log(123);
                         numberClass = 'eight';
                         break;
                     case  parseInt(res.length) > 6:
@@ -1087,7 +1085,8 @@
     .pk_container .pl_rt .bg {
         border: 2px solid rgba(255, 239, 149, 0.5);
         /*background: rgba(255, 230, 0, 0.5);*/
-        background: rgba(233, 192, 12, 0.9);
+        /*background: rgba(233, 192, 12, 0.9);*/
+        background: rgba(245,195,0,0.9);
     }
 
 
@@ -1438,7 +1437,7 @@
     }
 
     .two .bottomLi .step {
-        width: 28%;
+        width: 26%;
         padding-right: 0%;
     }
 

+ 12 - 8
tv/需求修改和debug.md

@@ -127,20 +127,24 @@ let url = '';
     realHr->RealHr
     activePercent->ActivePercent
 2. app端,修改选课界面样式已上传,已更新 √ 
-
-  
+   ck往右移动 √ 
+8.duRs里也应该把 is_tmp_user 字段拼接进来。√  
+2.课程管理 单独添加,绑定,删除临时会员  (临时会员,单条增加,定一下怎么加?√  
+    增加手机号字段√  
  
- 2.课程管理 单独添加,绑定,删除临时会员  (临时会员,单条增加,定一下怎么加?
+=========
+
+测试临时会员系统
  
- *downloadwgt下的还是旧的包是为什么?
+*downloadwgt下的还是旧的包是为什么?
  
- 7.上课学生分组,改由后台进行第一次分组,每次改队上传后台处理
+7.上课学生分组,改由后台进行第一次分组,每次改队上传后台处理
+
 
- ck往右移动
  
- TV版本增加当日排名内容
+TV版本增加当日排名内容
  
- TODO 欢迎私有心率带同学来上课
+TODO 欢迎私有心率带同学来上课