廖雁生 преди 1 година
родител
ревизия
671b165ae2
променени са 34 файла, в които са добавени 852 реда и са изтрити 438 реда
  1. 2 2
      toktok-admin-screen/config/prod.env.js
  2. 9 1
      toktok-admin-screen/src/api/projection.js
  3. 2 2
      toktok-admin-screen/src/views/toktok-stores/backlog_loop_bind.vue
  4. 43 11
      toktok-admin-screen/src/views/toktok-stores/meal_standard.vue
  5. 1 1
      toktok-mealsNorm/dist/index.html
  6. 0 1
      toktok-mealsNorm/dist/static/css/app.71ac1059f0c90bdeea14d5d7f6ad2085.css.map
  7. 2 2
      toktok-mealsNorm/dist/static/css/app.71ac1059f0c90bdeea14d5d7f6ad2085.css
  8. 1 0
      toktok-mealsNorm/dist/static/css/app.7b1de5723c286524d7a815552e851194.css.map
  9. 2 0
      toktok-mealsNorm/dist/static/js/app.58b37fe89c758f5819dc.js
  10. 1 0
      toktok-mealsNorm/dist/static/js/app.58b37fe89c758f5819dc.js.map
  11. 0 2
      toktok-mealsNorm/dist/static/js/app.d9b7d52ecaa0c5d90e86.js
  12. 0 1
      toktok-mealsNorm/dist/static/js/app.d9b7d52ecaa0c5d90e86.js.map
  13. 1 1
      toktok-mealsNorm/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js.map
  14. 1 1
      toktok-mealsNorm/src/action/net.js
  15. 37 38
      toktok-mealsNorm/src/pages/detail.vue
  16. 88 90
      toktok-mealsNorm/src/pages/home.vue
  17. 19 30
      toktok-mealsNorm/src/pages/pdfView.vue
  18. 54 54
      toktok-mealsNorm/src/pages/second.vue
  19. 76 0
      toktok-mealsNorm/src/pages/second_operate.vue
  20. 33 27
      toktok-mealsNorm/src/router/index.js
  21. 1 1
      toktok-work-attendance/.editorconfig
  22. 143 143
      toktok-work-attendance/src/action/net.js
  23. BIN
      toktok-work-attendance/src/assets/img/Knowledgetraining.png
  24. 166 0
      toktok-work-attendance/src/pages/examination.vue
  25. 8 1
      toktok-work-attendance/src/pages/index.vue
  26. 91 0
      toktok-work-attendance/src/pages/knowledgetrain.vue
  27. 21 2
      toktok-work-attendance/src/router/index.js
  28. 4 0
      toktok-wx-applet/pages/beerBoxDetail/beerBoxDetail.js
  29. 1 1
      toktok-wx-applet/pages/beerBoxDetail/beerBoxDetail.wxml
  30. 33 16
      toktok-wx-applet/pages/beerBoxPayment/beerBoxPayment.js
  31. 5 5
      toktok-wx-applet/pages/beerDetail/beerDetail.wxml
  32. 4 2
      toktok-wx-applet/pages/mineOrderBeer/mineOrderBeer.js
  33. 2 2
      toktok-wx-applet/pages/mineOrderBeer/mineOrderBeer.wxml
  34. 1 1
      toktok-wx-applet/pages/mineOrderProgress/mineOrderProgress.wxml

+ 2 - 2
toktok-admin-screen/config/prod.env.js

@@ -1,6 +1,6 @@
 module.exports = {
   NODE_ENV: '"production"',
   ENV_CONFIG: '"prod"',
-  // BASE_API: '"http://stores.test.toktok.beer/tsa"'
-  BASE_API: '"http://stores.toktok.beer/tsa"'
+  BASE_API: '"http://stores.test.toktok.beer/tsa"'
+  // BASE_API: '"http://stores.toktok.beer/tsa"'
 }

+ 9 - 1
toktok-admin-screen/src/api/projection.js

@@ -388,6 +388,14 @@ export function updateOperating_manual(param) {
         params: param
     })
 }
+//修改报销流程
+export function updateReimbursement_process(param) {
+  return request({
+      url: '/sys_config/update/reimbursement_process',
+      method: 'post',
+      params: param
+  })
+}
 //同步最新的群聊数据
 export function group_chat_managerLoad(param) {
     return request({
@@ -518,4 +526,4 @@ export function quanliang_group_live_code_update(param) {
         method: 'post',
         params: param
     })
-}
+}

+ 2 - 2
toktok-admin-screen/src/views/toktok-stores/backlog_loop_bind.vue

@@ -3,7 +3,7 @@
 
     <div class="filter-container">
       <el-button size="medium" type="primary" icon="el-icon-plus" @click="newSend()">分发待办事项</el-button>
-      <el-select v-model="listQuery.busiId" class="filter-item" @change="handleFilter" placeholder="部门(门店)">
+      <el-select v-model="listQuery.departmentId" class="filter-item" @change="handleFilter" placeholder="部门(门店)">
         <el-option v-for="depart in departmentData" :key="depart.departmentId" :label="depart.name" :value="depart.departmentId" />
       </el-select>
       <el-select v-model="listQuery.loopType" class="filter-item" @change="handleFilter" placeholder="循环类型">
@@ -181,7 +181,7 @@ export default {
         currentPage: 1,
         pageSize: 20,
         status: '0',
-        busiId: null,
+        departmentId: null,
         loopType: null
       },
       statusData: [

+ 43 - 11
toktok-admin-screen/src/views/toktok-stores/meal_standard.vue

@@ -9,9 +9,19 @@
         :auto-upload="true"
         :limit="1"
         :before-upload="uploadFun"
+        style="margin-right:10px;"
       >
         <el-button slot="trigger" size="medium" type="primary">运营手册上传</el-button>
       </el-upload>
+      <el-upload
+        ref="upload"
+        action=""
+        :auto-upload="true"
+        :limit="1"
+        :before-upload="uploadFun2"
+      >
+        <el-button slot="trigger" size="medium" type="primary">报销流程上传</el-button>
+      </el-upload>
     </div>
 
     <el-tabs @tab-click="loadDatas">
@@ -35,7 +45,7 @@
         </el-table>
       </el-tab-pane>
     </el-tabs>
-    
+
     <el-tabs>
       <el-tab-pane label="二级节点" >
         <el-table :data="pageInfo2.records" border stripe style="width: 100%;">
@@ -75,7 +85,7 @@
         <el-form-item label="父节点:" prop="title">
           <el-select v-model="addStand_parmas.parentId" >
             <el-option v-for="item in stand1_list" :key="item.standardId" :label="item.name" :value="item.standardId" />
-          </el-select>          
+          </el-select>
         </el-form-item>
         <el-form-item label="节点名称:" prop="title">
           <el-input v-model="addStand_parmas.name" placeholder="节点名称" />
@@ -97,7 +107,7 @@
         <vue-tinymce style="width: 1000px;" v-model="content" :setup="setup" :setting="setting" />
         <div style="text-align:center;">
           <el-button size="medium" type="primary"  @click="sure()">保存</el-button>
-        </div>      
+        </div>
     </div>
 
   </div>
@@ -109,7 +119,7 @@ import VueTinymce from "@packy-tang/vue-tinymce"
 import language_url from "../../../static/zh_CN.js"
 import { scrollTo } from '@/utils/scrollTo'
 import { meal_standardList, meal_standardAdd, meal_standardUpdate, meal_standardDelete, meal_standardViewComment, meal_standardAddComment, imgUpload } from '@/api/toktok'
-import { updateOperating_manual } from '@/api/projection'
+import { updateOperating_manual, updateReimbursement_process } from '@/api/projection'
 Vue.use(VueTinymce)
 
 export default {
@@ -124,7 +134,7 @@ export default {
           height: 500,
           menubar: true,
           resize: 'both', // 调整编辑器大小工具 true(仅允许改变高度), false(完全不让你动), 'both'(宽高都能改变,注意引号)
-          toolbar: 'table tableMergeCells | code | removeformat fontselect fontsizeselect alignleft aligncenter alignright alignjustify bold italic | bullist numlist emoticons charmap hr insertdatetime link image | help fullscreen', 
+          toolbar: 'table tableMergeCells | code | removeformat fontselect fontsizeselect alignleft aligncenter alignright alignjustify bold italic | bullist numlist emoticons charmap hr insertdatetime link image | help fullscreen',
           language: 'zh_CN',
           language_url: language_url,
           suffix: '.min',
@@ -171,10 +181,32 @@ export default {
         imgUpload(this.params).then(res => {
           const ret = res.data;
           if (ret.code === 200) {
-              console.log(ret.data);
-              updateOperating_manual({value: ret.data}).then((res) => {
-                this.$notify.success({ title: '上传成功' });
-              })
+            console.log(ret.data);
+            updateOperating_manual({value: ret.data}).then((res) => {
+              this.$notify.success({ title: '上传成功' });
+            })
+          }
+        })
+      }
+    },
+    uploadFun2(file) {
+      const isPDF = file.type === 'application/pdf'
+      if (!isPDF) {
+        this.$message.error('请上传 pdf 格式文件!')
+        this.$notify.error({ title: '上传失败' });
+        this.params = null
+        return false
+      } else {
+        this.params = new FormData();
+        this.params.set('subPath', 'stores/operatingManual/');
+        this.params.set('file', file);
+        imgUpload(this.params).then(res => {
+          const ret = res.data;
+          if (ret.code === 200) {
+            console.log(ret.data);
+            updateReimbursement_process({value: ret.data}).then((res) => {
+              this.$notify.success({ title: '上传成功' });
+            })
           }
         })
       }
@@ -198,12 +230,12 @@ export default {
               this.foundStand(parentId)
             }
             this.$notify.success({ title: '删除成功' })
-          })          
+          })
       }).catch(() => {
         this.$message({
           type: 'info',
           message: '已取消删除'
-        });          
+        });
       });
     },
     foundStand(standardId) {

Файловите разлики са ограничени, защото са твърде много
+ 1 - 1
toktok-mealsNorm/dist/index.html


Файловите разлики са ограничени, защото са твърде много
+ 0 - 1
toktok-mealsNorm/dist/static/css/app.71ac1059f0c90bdeea14d5d7f6ad2085.css.map


Файловите разлики са ограничени, защото са твърде много
+ 2 - 2
toktok-mealsNorm/dist/static/css/app.71ac1059f0c90bdeea14d5d7f6ad2085.css


Файловите разлики са ограничени, защото са твърде много
+ 1 - 0
toktok-mealsNorm/dist/static/css/app.7b1de5723c286524d7a815552e851194.css.map


Файловите разлики са ограничени, защото са твърде много
+ 2 - 0
toktok-mealsNorm/dist/static/js/app.58b37fe89c758f5819dc.js


Файловите разлики са ограничени, защото са твърде много
+ 1 - 0
toktok-mealsNorm/dist/static/js/app.58b37fe89c758f5819dc.js.map


Файловите разлики са ограничени, защото са твърде много
+ 0 - 2
toktok-mealsNorm/dist/static/js/app.d9b7d52ecaa0c5d90e86.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 1
toktok-mealsNorm/dist/static/js/app.d9b7d52ecaa0c5d90e86.js.map


Файловите разлики са ограничени, защото са твърде много
+ 1 - 1
toktok-mealsNorm/dist/static/js/manifest.3ad1d5771e9b13dbdad2.js.map


+ 1 - 1
toktok-mealsNorm/src/action/net.js

@@ -2,7 +2,7 @@ import axios from 'axios'
 import qs from 'qs'
 import router from '@/router'
 
-var banruo_debug = false;//true测试环境false生产环境stores.toktok.beer
+var banruo_debug = true;//true测试环境false生产环境stores.toktok.beer
 axios.defaults.baseURL = banruo_debug ? 'http://work.test.toktok.beer' : 'http://work.toktok.beer';//配置接口地址
 axios.defaults.timeout = 15000;//响应时间
 axios.defaults.headers.get['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';  //此处是增加的代码,设置请求头的类型

+ 37 - 38
toktok-mealsNorm/src/pages/detail.vue

@@ -1,51 +1,50 @@
 <template>
-    <div id="detail">
-        <div class="content" v-html="content"></div>
-    </div>
+  <div id="detail">
+    <div class="content" v-html="content"></div>
+  </div>
 </template>
 
 <script>
 import net from '../action/net'
 export default {
-    name:'detail',
-    components: {
+  name:'detail',
+  components: {
 
-    },
-    data() {
-		return {
-            employeeId: this.$store.state.employeeId,
-            content: '',
-        }
-    },
-    computed: {
+  },
+  data() {
+    return {
+      employeeId: this.$store.state.employeeId,
+      content: '',
+    }
+  },
+  computed: {
 
-    },
-    created:function() {
-        var commentId = this.$route.query.commentId;
-        if(commentId) {
-            this.getDetails(commentId);
-        }
-    },
-    mounted:function() {
-        // console.log( document.getElementsByTagName("tr") )//cells
+  },
+  created:function() {
+    var commentId = this.$route.query.commentId;
+    if(commentId) {
+        this.getDetails(commentId);
+    }
+  },
+  mounted:function() {
 
+  },
+  methods: {
+    getDetails(commentId) {
+      let that = this;
+      net.sendRequest('GET','/oa/meal/standard/comment/get', {commentId: commentId})
+      .then((res) => {
+        if(res.data.code != 200) {
+          console.log('请求失败'+res.data.code);
+          return;
+        }
+        this.content = res.data.data.comment
+      })
+      .catch((err)=>{
+        console.log(err)
+      });
     },
-    methods: {
-        getDetails(commentId) {
-            let that = this;
-            net.sendRequest('GET','/oa/meal/standard/comment/get', {commentId: commentId})
-            .then((res) => {
-                if(res.data.code != 200) {
-                    console.log('请求失败'+res.data.code);
-                    return;
-                }
-                this.content = res.data.data.comment
-            })
-            .catch((err)=>{
-                console.log(err)
-            });
-        },
-    }
+  }
 }
 </script>
 

+ 88 - 90
toktok-mealsNorm/src/pages/home.vue

@@ -1,24 +1,24 @@
 <template>
-    <div id="home">
-        <div class="box">
-            <img class="img-logo" src="../assets/logo1.png" alt="">
-            <div class="beer-search">
-                <input type="text" placeholder="关键词搜索" v-model="keyWord" @keydown.enter="search()" @keyup.enter="search()">
-                <img src="../assets/search.png" alt="" @click="search()">
-            </div>
-            <div style="font-size: 20px;" class="item" v-for="(item, index) in stand_list_found" :key="index">
-                <span @click="toDetail(item)">{{ item.name }}</span>
-            </div>
-            <div :hidden="stand_list_found.length == 0" style="border-bottom: 1px solid blue;margin-top: 20px;"></div>
-            <div class="item">
-                <span @click="test()" style="color:#FF5700;">运营手册</span>
-            </div>
-            <div class="item" v-for="(item, index) in stand_list" :key="index">
-                <span @click="second(item)">{{ item.name }}</span>
-            </div>
-        </div>
-        <!-- <img class="ip-logo" src="../assets/toktok.png" alt=""> -->
+  <div id="home">
+    <div class="box">
+      <img class="img-logo" src="../assets/logo1.png" alt="">
+      <div class="beer-search">
+        <input type="text" placeholder="关键词搜索" v-model="keyWord" @keydown.enter="search()" @keyup.enter="search()">
+        <img src="../assets/search.png" alt="" @click="search()">
+      </div>
+      <div style="font-size: 20px;" class="item" v-for="(item, index) in stand_list_found" :key="index">
+        <span @click="toDetail(item)">{{ item.name }}</span>
+      </div>
+      <div :hidden="stand_list_found.length == 0" style="border-bottom: 1px solid blue;margin-top: 20px;"></div>
+      <div class="item">
+        <span @click="toSecond_operate()" style="color:#FF5700;">运营文档</span>
+      </div>
+      <div class="item" v-for="(item, index) in stand_list" :key="index">
+        <span @click="second(item)">{{ item.name }}</span>
+      </div>
     </div>
+    <!-- <img class="ip-logo" src="../assets/toktok.png" alt=""> -->
+  </div>
 </template>
 
 <script>
@@ -30,88 +30,86 @@ export default {
 
     },
     data() {
-		return {
-            keyWord: '',
-            stand_list: [],
-            stand_list_found: []
-        }
+      return {
+        keyWord: '',
+        stand_list: [],
+        stand_list_found: []
+      }
     },
     computed: {
-        employeeId: {
-            get() {
-                return this.$store.state.employeeId
-            },
-            set(value){
-                this.$store.commit('setEmployeeId',value)
-            }
+      employeeId: {
+        get() {
+          return this.$store.state.employeeId
         },
-        empInfo: {
-            get() {
-                return this.$store.state.empInfo
-            },
-            set(value){
-                this.$store.commit('setEmpInfo',value)
-            }
+        set(value){
+          this.$store.commit('setEmployeeId',value)
+        }
+      },
+      empInfo: {
+        get() {
+          return this.$store.state.empInfo
         },
+        set(value){
+          this.$store.commit('setEmpInfo',value)
+        }
+      },
     },
     created:function() {
         
     },
     mounted:function() {
-        this.getData()
-        
+      this.getData()
     },
     methods: {
-        test() {
-            this.$router.push({name:'pdfView',query:{}})
-            // window.open('static/pdf/web/viewer.html?file=http://toktok-beer.oss-cn-shenzhen.aliyuncs.com/test/stores/file/toktok.pdf');
-        },
-        toDetail(item) {
-            if(item.parentId == 0) {
-                this.second(item)
-            }else{
-                document.title = item.name
-                this.$router.push({name:'detail',query:{commentId: item.commentId}})
-            }
-        },
-        search() {
-            let that = this;
-            if(that.keyWord) {
-                net.sendRequest('GET','/oa/meal/standard/list', {name: that.keyWord})
-                .then((res) => {
-                    if(res.data.code != 200) {
-                        console.log('请求失败'+res.data.code);
-                        return;
-                    }
-                    that.stand_list_found = res.data.data.list
-                })
-                .catch((err)=>{
-                    console.log(err)
-                });
-            }else{
-                that.stand_list_found = []
-            }
-        },
-        second(item) {
-            document.title = item.name
-            this.$router.push({name:'second',query:{parentId: item.standardId, name: item.name}})
-        },
-        getData() {
-            let that = this;
-            net.sendRequest('GET','/oa/meal/standard/list', {parentId: 0})
-            .then((res) => {
-                if(res.data.code != 200) {
-                    console.log('请求失败'+res.data.code);
-                    return;
-                }
-                that.stand_list = res.data.data.list
-                that.empInfo = res.data.data.empInfo
-                warterMark.set(that.empInfo.name, that.empInfo.phone)
-            })
-            .catch((err)=>{
-                console.log(err)
-            });
-        },
+      toSecond_operate() {
+        this.$router.push({name:'second_operate',query:{}})
+      },
+      toDetail(item) {
+        if(item.parentId == 0) {
+          this.second(item)
+        }else{
+          document.title = item.name
+          this.$router.push({name:'detail',query:{commentId: item.commentId}})
+        }
+      },
+      search() {
+          let that = this;
+          if(that.keyWord) {
+              net.sendRequest('GET','/oa/meal/standard/list', {name: that.keyWord})
+              .then((res) => {
+                  if(res.data.code != 200) {
+                      console.log('请求失败'+res.data.code);
+                      return;
+                  }
+                  that.stand_list_found = res.data.data.list
+              })
+              .catch((err)=>{
+                  console.log(err)
+              });
+          }else{
+              that.stand_list_found = []
+          }
+      },
+      second(item) {
+          document.title = item.name
+          this.$router.push({name:'second',query:{parentId: item.standardId, name: item.name}})
+      },
+      getData() {
+          let that = this;
+          net.sendRequest('GET','/oa/meal/standard/list', {parentId: 0})
+          .then((res) => {
+              if(res.data.code != 200) {
+                  console.log('请求失败'+res.data.code);
+                  return;
+              }
+              that.stand_list = res.data.data.list
+              that.empInfo = res.data.data.empInfo
+              warterMark.set(that.empInfo.name, that.empInfo.phone)
+          })
+          .catch((err)=>{
+              console.log(err)
+          });
+      },
     }
 }
 </script>

+ 19 - 30
toktok-mealsNorm/src/pages/pdfView.vue

@@ -7,41 +7,30 @@
 <script>
 import net from '../action/net'
 export default {
-    data() {
-        return{
-            // pdfUrl: '/static/toktok.pdf',
-            // pdfUrl: net.banruo_debug ? encodeURIComponent('http://toktok-beer.oss-cn-shenzhen.aliyuncs.com/test/stores/file/toktok.pdf') : encodeURIComponent('http://toktok-beer.oss-cn-shenzhen.aliyuncs.com/stores/file/toktok.pdf') ,
-            pdfUrl: null,
-        }
-    },
-    mounted:function() {
-        var pdfCotainer = this.$refs.pdfCotainer;
-        pdfCotainer.height = document.documentElement.clientHeight;
-        pdfCotainer.width = document.documentElement.clientWidth;
-        this.getUrl();
-    },
-    methods: {
-        getUrl() {
-            let that = this;
-            net.sendRequest('GET','/oa/meal/standard/operating_manual/get', {})
-            .then((res) => {
-                if(res.data.code != 200) {
-                    console.log('请求失败'+res.data.code);
-                    return;
-                }
-                that.pdfUrl = res.data.data
-            })
-            .catch((err)=>{
-                console.log(err)
-            });
-        },
-    }
+	data() {
+		return{
+			// pdfUrl: '/static/toktok.pdf',
+			// pdfUrl: net.banruo_debug ? encodeURIComponent('http://toktok-beer.oss-cn-shenzhen.aliyuncs.com/test/stores/file/toktok.pdf') : encodeURIComponent('http://toktok-beer.oss-cn-shenzhen.aliyuncs.com/stores/file/toktok.pdf') ,
+			pdfUrl: null,
+		}
+	},
+	created:function() {
+		this.pdfUrl = this.$route.query.url;
+	},
+	mounted:function() {
+		var pdfCotainer = this.$refs.pdfCotainer;
+		pdfCotainer.height = document.documentElement.clientHeight;
+		pdfCotainer.width = document.documentElement.clientWidth;
+	},
+	methods: {
+
+	}
 }
 </script>
 
 <style>
 .pdfBox{
-    overflow-y: scroll;
+	overflow-y: scroll;
 }
 
 </style>

+ 54 - 54
toktok-mealsNorm/src/pages/second.vue

@@ -11,74 +11,74 @@
 <script>
 import net from '../action/net'
 export default {
-    name:'second',
-    components: {
+  name:'second',
+  components: {
 
-    },
-    data() {
-		return {
-            employeeId: this.$store.state.employeeId,
-            parentId: null,
-            stand_list: []
-        }
-    },
-    computed: {
+  },
+  data() {
+    return {
+      employeeId: this.$store.state.employeeId,
+      parentId: null,
+      stand_list: []
+    }
+  },
+  computed: {
 
+  },
+  created:function() {
+    this.parentId = this.$route.query.parentId;
+    if(this.parentId) {
+      this.getDetails(this.parentId, null);
+    }
+  },
+  mounted:function() {
+    if(this.$route.query.name){
+      document.title = this.$route.query.name
+    }
+  },
+  methods: {
+    detail(item) {
+      document.title = item.name
+      this.$router.push({name:'detail',query:{commentId: item.commentId}})
     },
-    created:function() {
-        this.parentId = this.$route.query.parentId;
-        if(this.parentId) {
-            this.getDetails(this.parentId, null);
-        }
-    },
-    mounted:function() {
-        if(this.$route.query.name){
-            document.title = this.$route.query.name
+    getDetails(parentId) {
+      let that = this;
+      net.sendRequest('GET','/oa/meal/standard/list', {parentId: parentId})
+      .then((res) => {
+        if(res.data.code != 200) {
+          console.log('请求失败'+res.data.code);
+          return;
         }
+        that.stand_list = res.data.data.list
+      })
+      .catch((err)=>{
+        console.log(err)
+      });
     },
-    methods: {
-        detail(item) {
-            document.title = item.name
-            this.$router.push({name:'detail',query:{commentId: item.commentId}})
-        },
-        getDetails(parentId) {
-            let that = this;
-            net.sendRequest('GET','/oa/meal/standard/list', {parentId: parentId})
-            .then((res) => {
-                if(res.data.code != 200) {
-                    console.log('请求失败'+res.data.code);
-                    return;
-                }
-                that.stand_list = res.data.data.list
-            })
-            .catch((err)=>{
-                console.log(err)
-            });
-        },
-    }
+  }
 }
 </script>
 
 <style scoped>
 #second{
-    width: 375px;
-    height: auto;
-    display: flex;
-    flex-direction: column;
+  width: 375px;
+  height: auto;
+  display: flex;
+  flex-direction: column;
 }
 .box{
-    width: calc(100% - 40px);
-    height: auto;
-    display: flex;
-    flex-direction: column;
-    padding: 20px;
-    font-size: 24px;
+  width: calc(100% - 40px);
+  height: auto;
+  display: flex;
+  flex-direction: column;
+  padding: 20px;
+  font-size: 24px;
 }
 .item{
-    width: auto;
-    margin: 20px 10px 0;
-    text-align: left;
-    color: -webkit-link;
+  width: auto;
+  margin: 20px 10px 0;
+  text-align: left;
+  color: -webkit-link;
 }
 
 </style>

+ 76 - 0
toktok-mealsNorm/src/pages/second_operate.vue

@@ -0,0 +1,76 @@
+<template>
+  <div id="second">
+    <div class="box">
+      <div class="item" v-for="(item, index) in stand_list" :key="index">
+        <a @click="toPdfView(item)">{{item.name}}</a>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import net from '../action/net'
+export default {
+  name:'second',
+  components: {
+
+  },
+  data() {
+    return {
+      stand_list: []
+    }
+  },
+  computed: {
+
+  },
+  created:function() {
+    this.getUrl();
+  },
+  mounted:function() {
+
+  },
+  methods: {
+    getUrl() {
+      let that = this;
+      net.sendRequest('GET','/oa/meal/standard/operational_document/get', {})
+      .then((res) => {
+        if(res.data.code != 200) {
+          console.log('请求失败'+res.data.code);
+          return;
+        }
+        that.stand_list = res.data.data;
+      })
+      .catch((err)=>{
+        console.log(err)
+      });
+    },
+    toPdfView(item) {
+      this.$router.push({name:'pdfView',query:{url: item.url}})
+    },
+  }
+}
+</script>
+
+<style scoped>
+#second{
+  width: 375px;
+  height: auto;
+  display: flex;
+  flex-direction: column;
+}
+.box{
+  width: calc(100% - 40px);
+  height: auto;
+  display: flex;
+  flex-direction: column;
+  padding: 20px;
+  font-size: 24px;
+}
+.item{
+  width: auto;
+  margin: 20px 10px 0;
+  text-align: left;
+  color: -webkit-link;
+}
+
+</style>

+ 33 - 27
toktok-mealsNorm/src/router/index.js

@@ -3,6 +3,7 @@ import Router from 'vue-router'
 
 import login from '@/pages/login'
 import home from '@/pages/home'
+import second_operate from '@/pages/second_operate'
 import second from '@/pages/second'
 import detail from '@/pages/detail'
 import pdfView from '@/pages/pdfView'
@@ -10,31 +11,36 @@ import pdfView from '@/pages/pdfView'
 Vue.use(Router)
 
 export default new Router({
-    routes: [
-        {
-            path: '/',
-            name: 'home',
-            component: home
-        },
-        {
-            path: '/login',
-            name: 'login',
-            component: login
-        },
-        {
-            path: '/second',
-            name: 'second',
-            component: second
-        },
-        {
-            path: '/detail',
-            name: 'detail',
-            component: detail
-        },
-        {
-            path: '/pdfView',
-            name: 'pdfView',
-            component: pdfView
-        },
-    ]
+  routes: [
+    {
+      path: '/',
+      name: 'home',
+      component: home
+    },
+    {
+      path: '/login',
+      name: 'login',
+      component: login
+    },
+    {
+      path: '/second_operate',
+      name: 'second_operate',
+      component: second_operate
+    },
+    {
+      path: '/second',
+      name: 'second',
+      component: second
+    },
+    {
+      path: '/detail',
+      name: 'detail',
+      component: detail
+    },
+    {
+      path: '/pdfView',
+      name: 'pdfView',
+      component: pdfView
+    },
+  ]
 })

+ 1 - 1
toktok-work-attendance/.editorconfig

@@ -3,7 +3,7 @@ root = true
 [*]
 charset = utf-8
 indent_style = space
-indent_size = 2
+indent_size = 4
 end_of_line = lf
 insert_final_newline = true
 trim_trailing_whitespace = true

+ 143 - 143
toktok-work-attendance/src/action/net.js

@@ -1,143 +1,143 @@
-import axios from 'axios'
-import qs from 'qs'
-
-var banruo_debug = false;//true测试环境false生产环境http://work.test.toktok.beer
-axios.defaults.baseURL = banruo_debug ? 'http://work.test.toktok.beer' : 'http://work.toktok.beer';//配置接口地址
-axios.defaults.timeout = 15000;//响应时间
-axios.defaults.headers.get['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';  //设置请求头的类型
-axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';//配置请求头
-// axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';//配置请求头
-axios.defaults.headers.common["My-User-Agent"] = "H5#H5#201#201";
-
-
-//POST传参序列化(添加请求拦截器)
-// axios.interceptors.request.use((config) => {
-//     //在发送请求之前做某件事
-//     if(config.method  === 'post'){
-//         config.data = qs.stringify(config.data);
-//     }
-//     return config;
-// },(error) =>{
-//     console.log('错误的传参')
-//     return Promise.reject(error);
-// });
-
-//返回状态判断(添加响应拦截器)
-axios.interceptors.response.use((res) =>{
-    //对响应数据做些事
-    if(!res.data.success){
-        return Promise.resolve(res);
-    }
-    return res;
-}, (error) => {
-    console.log('网络异常')
-    return Promise.reject(error);
-});
-
-export default {
-    banruo_debug,
-    sendRequest(method, url, params) {
-        return new Promise((resolve, reject) => {
-            axios.defaults.headers.common["Auth-Token"] = localStorage.getItem('Auth-Token');
-            if(method == 'GET'){
-                axios.get(url, {params: params})
-                .then(response => {
-                    resolve(response)
-                }, err => {
-                    reject(err)
-                })
-                .catch((error) => {
-                    reject(error)
-                })
-            }else if(method == 'POST'){
-                axios.post(url, params)
-                .then(response => {
-                    resolve(response);
-                }, err => {
-                    reject(err);
-                })
-                .catch((error) => {
-                    reject(error)
-                })
-            }
-        })
-    },
-    //返回一个Promise(发送post请求)
-    downloadPost(url, params) {
-        return new Promise((resolve, reject) => {
-            axios.defaults.headers.post['Content-Type'] = 'multipart/form-data';
-            axios.post(url, params)
-                .then(response => {
-                    resolve(response);
-                }, err => {
-                    reject(err);
-                })
-                .catch((error) => {
-                    reject(error)
-                })
-        })
-    },
-    //返回一个Promise(发送post请求)
-    fetchPost(url, params) {
-        return new Promise((resolve, reject) => {
-            axios.post(url, params)
-                .then(response => {
-                    resolve(response);
-                }, err => {
-                    reject(err);
-                })
-                .catch((error) => {
-                    reject(error)
-                })
-        })
-    },
-    //返回一个Promise(发送get请求)
-    fetchGet(url, param) {
-        return new Promise((resolve, reject) => {
-            axios.get(url, {params: param})
-                .then(response => {
-                    resolve(response)
-                }, err => {
-                    reject(err)
-                })
-                .catch((error) => {
-                    reject(error)
-                })
-        })
-    },
-    //获取URL参数
-    getUrlKey (name) {
-        return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null
-    },
-    wxJSSDK(){
-        var localUrl = encodeURIComponent(location.href.split('#')[0]);
-        this.sendRequest('GET','/oa/jsapi/sign',{url:localUrl})
-        .then((res) => {
-            if(res.data.code == 200){
-                //console.log(res);
-                wx.config({
-                    beta: true,
-                    debug: false, // 默认为false  为true的时候是调试模式,会打印出日志
-                    appId: res.data.data.appid,
-                    timestamp: res.data.data.timestamp,
-                    nonceStr: res.data.data.noncestr,
-                    signature: res.data.data.signature,
-                    jsApiList: [
-                        'getLocalImgData',
-                        'chooseImage',
-                        'previewImage',
-                        'uploadImage'
-                    ]
-                });
-                wx.ready(function() {
-
-                });
-            }else{
-                console.log(res)
-            }
-        })
-        .catch((err)=>{
-            console.log(err)
-        }); 
-    }
-}
+import axios from 'axios'
+import qs from 'qs'
+
+var banruo_debug = true;//true测试环境false生产环境http://work.test.toktok.beer
+axios.defaults.baseURL = banruo_debug ? 'http://work.test.toktok.beer' : 'http://work.toktok.beer';//配置接口地址
+axios.defaults.timeout = 15000;//响应时间
+axios.defaults.headers.get['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';  //设置请求头的类型
+axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';//配置请求头
+// axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';//配置请求头
+axios.defaults.headers.common["My-User-Agent"] = "H5#H5#201#201";
+
+
+//POST传参序列化(添加请求拦截器)
+// axios.interceptors.request.use((config) => {
+//     //在发送请求之前做某件事
+//     if(config.method  === 'post'){
+//         config.data = qs.stringify(config.data);
+//     }
+//     return config;
+// },(error) =>{
+//     console.log('错误的传参')
+//     return Promise.reject(error);
+// });
+
+//返回状态判断(添加响应拦截器)
+axios.interceptors.response.use((res) =>{
+    //对响应数据做些事
+    if(!res.data.success){
+        return Promise.resolve(res);
+    }
+    return res;
+}, (error) => {
+    console.log('网络异常')
+    return Promise.reject(error);
+});
+
+export default {
+    banruo_debug,
+    sendRequest(method, url, params) {
+        return new Promise((resolve, reject) => {
+            axios.defaults.headers.common["Auth-Token"] = localStorage.getItem('Auth-Token');
+            if(method == 'GET'){
+                axios.get(url, {params: params})
+                .then(response => {
+                    resolve(response)
+                }, err => {
+                    reject(err)
+                })
+                .catch((error) => {
+                    reject(error)
+                })
+            }else if(method == 'POST'){
+                axios.post(url, params)
+                .then(response => {
+                    resolve(response);
+                }, err => {
+                    reject(err);
+                })
+                .catch((error) => {
+                    reject(error)
+                })
+            }
+        })
+    },
+    //返回一个Promise(发送post请求)
+    downloadPost(url, params) {
+        return new Promise((resolve, reject) => {
+            axios.defaults.headers.post['Content-Type'] = 'multipart/form-data';
+            axios.post(url, params)
+                .then(response => {
+                    resolve(response);
+                }, err => {
+                    reject(err);
+                })
+                .catch((error) => {
+                    reject(error)
+                })
+        })
+    },
+    //返回一个Promise(发送post请求)
+    fetchPost(url, params) {
+        return new Promise((resolve, reject) => {
+            axios.post(url, params)
+                .then(response => {
+                    resolve(response);
+                }, err => {
+                    reject(err);
+                })
+                .catch((error) => {
+                    reject(error)
+                })
+        })
+    },
+    //返回一个Promise(发送get请求)
+    fetchGet(url, param) {
+        return new Promise((resolve, reject) => {
+            axios.get(url, {params: param})
+                .then(response => {
+                    resolve(response)
+                }, err => {
+                    reject(err)
+                })
+                .catch((error) => {
+                    reject(error)
+                })
+        })
+    },
+    //获取URL参数
+    getUrlKey (name) {
+        return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ""])[1].replace(/\+/g, '%20')) || null
+    },
+    wxJSSDK(){
+        var localUrl = encodeURIComponent(location.href.split('#')[0]);
+        this.sendRequest('GET','/oa/jsapi/sign',{url:localUrl})
+        .then((res) => {
+            if(res.data.code == 200){
+                //console.log(res);
+                wx.config({
+                    beta: true,
+                    debug: false, // 默认为false  为true的时候是调试模式,会打印出日志
+                    appId: res.data.data.appid,
+                    timestamp: res.data.data.timestamp,
+                    nonceStr: res.data.data.noncestr,
+                    signature: res.data.data.signature,
+                    jsApiList: [
+                        'getLocalImgData',
+                        'chooseImage',
+                        'previewImage',
+                        'uploadImage'
+                    ]
+                });
+                wx.ready(function() {
+
+                });
+            }else{
+                console.log(res)
+            }
+        })
+        .catch((err)=>{
+            console.log(err)
+        });
+    }
+}

BIN
toktok-work-attendance/src/assets/img/Knowledgetraining.png


+ 166 - 0
toktok-work-attendance/src/pages/examination.vue

@@ -0,0 +1,166 @@
+<template>
+    <div id="examination">
+        <div class="examin-header">
+            <span>答题进度 1/5</span>
+            <span>{{ countdown }}</span>
+        </div>
+        <div class="topic">题目题目题目题目题目题目题目题目题目题目题目题目题目题目题目题目题目题目?</div>
+        <div class="options">A.选项</div>
+        <div class="options">B.选项</div>
+        <div class="options" @click="choice()">C.选项</div>
+        <div class="options">D.选项</div>
+    </div>
+</template>
+
+<script>
+import net from '../action/net'
+
+export const pageChangeShowHide = function(){
+    let hidden,state,visibilityChange;
+    if(typeof document.hidden !== 'undefined'){
+        hidden = 'hidden';
+        state = 'visibilityState';
+        visibilityChange = 'visibilitychange';
+    }else if(typeof document.mozHidden !== 'undefined'){
+        hidden = 'mozHidden';
+        state = 'mozvisibilityState';
+        visibilityChange = 'mozvisibilitychange';
+    }else if(typeof document.msHidden !== 'undefined'){
+        hidden = 'msHidden';
+        state = 'msvisibilityState';
+        visibilityChange = 'msvisibilitychange';
+    }else if(typeof document.webkitHidden !== 'undefined'){
+        hidden = 'webkitHidden';
+        state = 'webkitvisibilityState';
+        visibilityChange = 'webkitvisibilitychange';
+    }
+    return { hidden,state,visibilityChange }
+}
+
+export default {
+    name: 'examination',
+    data(){
+		return {
+            countdown: 10,//倒计时
+            timer: null,//定时器
+            is_pause: false,//是否暂停
+        }
+    },
+    created() {
+        // this.timeFn()
+        this.$nextTick(() => {
+            let { hidden, state, visibilityChange } = pageChangeShowHide()
+            document.addEventListener(visibilityChange, ()=> {
+                // // 页面变为可见时触发
+                if (document[state] == 'visible') {
+                    console.log('ddd')
+                }
+                // if (document[state] == 'hidden') {
+                //   alert('aaa')
+                // }
+            });
+        })
+    },
+    mounted() {
+        //添加事件当页面卸载(关闭)或刷新时调用
+        window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
+    },
+    destroyed() {
+        //删除当页面卸载(关闭)或刷新时调用事件
+        window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))
+    },
+    methods:{
+        choice() {
+            this.pauseFn()
+            this.countdown = 20
+            this.timeFn()
+        },
+        //开始倒计时
+        timeFn() {
+            this.is_pause = true
+            this.timer = setInterval(() => {
+                if (this.countdown > 0) {
+                    this.countdown--;
+                } else {
+                    clearInterval(this.timer);
+                    // 倒计时结束后需要执行的操作
+                    this.is_pause = false
+                }
+            }, 1000);
+        },
+        //暂停倒计时
+        pauseFn() {
+            clearInterval(this.timer);
+            this.is_pause = false
+        },
+        beforeunloadHandler() {
+            console.log('关闭')
+        },
+    }
+}
+</script>
+
+<style scoped>
+#examination{
+    width: 375px;
+    height: auto;
+    min-height: 100vh;
+    background-color: #f5f5f5;
+    overflow: auto;
+    margin: auto;
+}
+.examin-header{
+    display: flex;
+    flex-direction: row;
+    justify-content: space-between;
+    align-items: baseline;
+    margin: 20px;
+    width: 335px;
+    height: auto;
+}
+.examin-header>span:nth-child(1){
+    width: auto;
+    height: 24px;
+    font-size: 18px;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 600;
+    color: rgba(0,0,0);
+    line-height: 24px;
+}
+.examin-header>span:nth-child(2){
+    width: 30px;
+    height: 30px;
+    border-radius: 50%;
+    font-size: 18px;
+    border: 2px solid #cdcdcd;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 400;
+    color: rgba(0, 0, 0, 0.769);
+    line-height: 30px;
+}
+.topic{
+    margin: 20px 20px 50px;
+    width: 335px;
+    height: auto;
+    font-size: 20px;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 400;
+    color: rgba(0,0,0);
+    line-height: 24px;
+    text-align: left;
+}
+.options{
+    margin: 0 40px 30px;
+    padding: 0 10px;
+    width: 275px;
+    height: auto;
+    font-size: 18px;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 400;
+    color: rgba(0, 0, 0, 0.7);
+    line-height: 35px;
+    text-align: center;
+    border: 1px solid #00000075;
+    border-radius: 4px;
+}
+</style>

+ 8 - 1
toktok-work-attendance/src/pages/index.vue

@@ -44,6 +44,10 @@
         <div class="app-box">
             <div class="app-title">通用</div>
             <div class="app-list">
+                <div class="app-item" @click="toKnowledgetrain()">
+                    <img src="../assets/img/Knowledgetraining.png" alt="">
+                    <span>知识培训</span>
+                </div>
                 <div class="app-item" @click="toTokTok()">
                     <img src="../assets/img/beer.png" alt="">
                     <span>精酿科普</span>
@@ -144,6 +148,9 @@ export default {
                 console.log(err)
             });
         },
+        toKnowledgetrain() {
+            this.$router.push({name:'knowledgetrain',query:{}})
+        },
         toWaitWork() {
             this.$router.push({name:'waitWorkList',query:{}})
         },
@@ -244,4 +251,4 @@ export default {
     background: #f5f5f5b9;
 }
 
-</style>
+</style>

+ 91 - 0
toktok-work-attendance/src/pages/knowledgetrain.vue

@@ -0,0 +1,91 @@
+<template>
+    <div id="knowledgetrain">
+        <div class="konwledge-list" v-for="(item, index) in knowListL" :key="index" @click="toExamination(item)">
+            <span>{{ item.name }}</span>
+            <span v-show="item.finishStatus">{{ item.score }}</span>
+            <span v-show="!item.finishStatus">进入>></span>
+        </div>
+    </div>
+</template>
+
+<script>
+import net from '../action/net'
+export default {
+    name: 'knowledgetrain',
+    data(){
+		return {
+            knowListL: [
+                {
+                    name: '打酒知识培训',
+                    finishStatus: false,
+                    score: ''
+                },
+                {
+                    name: '考勤知识培训',
+                    finishStatus: true,
+                    score: '100分'
+                },
+            ]
+        }
+    },
+    mounted:function() {
+
+    },
+    methods:{
+        toExamination(item) {
+            this.$router.push({name:'examination',query:{}})
+        }
+    }
+}
+</script>
+
+<style scoped>
+#knowledgetrain{
+    width: 375px;
+    height: auto;
+    min-height: 100vh;
+    background-color: #f5f5f5;
+    overflow: auto;
+    margin: auto;
+}
+.konwledge-list{
+    width: 275px;
+    height: auto;
+    background: #FFFFFF;
+    box-shadow: 0px 16px 48px 0px rgba(55,79,109,0.06);
+    border-radius: 8px;
+    border: 1px solid #000;
+    margin: 30px;
+    padding: 0 20px;
+    display: flex;
+    flex-direction: row;
+    justify-content: space-between;
+    align-items: baseline;
+}
+.konwledge-list>span:nth-child(1){
+    width: auto;
+    height: 48px;
+    font-size: 28px;
+    font-family: PingFangSC-Regular, PingFang SC;
+    font-weight: 400;
+    color: rgba(0,0,0);
+    line-height: 48px;
+}
+.konwledge-list>span:nth-child(2){
+    width: auto;
+    height: 48px;
+    font-size: 30px;
+    font-family: AlipayNumber-Regular, AlipayNumber;
+    font-weight: 400;
+    color: #FF5700;
+    line-height: 48px;
+}
+.konwledge-list>span:nth-child(3){
+    width: auto;
+    height: 48px;
+    font-size: 20px;
+    color: rgba(0,0,0,0.4);
+    font-weight: 400;
+    line-height: 48px;
+}
+</style>

+ 21 - 2
toktok-work-attendance/src/router/index.js

@@ -16,7 +16,8 @@ import waitWorkList from '@/pages/waitWorkList'
 import submitWorkPic from '@/pages/submitWorkPic'
 import inquireWaitWorkList from '@/pages/inquireWaitWorkList'
 import checkWorkPic from '@/pages/checkWorkPic'
-
+import knowledgetrain from '@/pages/knowledgetrain'
+import examination from '@/pages/examination'
 
 Vue.use(Router)
 
@@ -32,6 +33,24 @@ export default new Router({
             }
         },
         {
+            path: '/knowledgetrain',
+            name: 'knowledgetrain',
+            component: knowledgetrain,
+            meta:{
+                title: '知识培训',
+                keepAlive: false
+            }
+        },
+        {
+            path: '/examination',
+            name: 'examination',
+            component: examination,
+            meta:{
+                title: '答题',
+                keepAlive: false
+            }
+        },
+        {
             path: '/workTable',
             name: 'workTable',
             component: workTable,
@@ -158,4 +177,4 @@ export default new Router({
             }
         },
     ]
-})
+})

+ 4 - 0
toktok-wx-applet/pages/beerBoxDetail/beerBoxDetail.js

@@ -1,5 +1,6 @@
 // pages/beerBoxDetail/beerBoxDetail.js
 const request = require("../../utils/request.js");
+const login = require("../../utils/login.js");
 Page({
 
   /**
@@ -95,6 +96,9 @@ Page({
       popover_Status: !this.data.popover_Status
     })
   },
+  toBeerDetail(event) {
+    login.ifLogin('../beerDetail/beerDetail?productId=' + event.currentTarget.dataset.pid)
+  },
   toPay() {
     wx.navigateTo({
       url: '../beerBoxPayment/beerBoxPayment?boxId='+this.data.boxId

+ 1 - 1
toktok-wx-applet/pages/beerBoxDetail/beerBoxDetail.wxml

@@ -29,7 +29,7 @@
   <view class="item-title">
     本期尖货
   </view>
-  <view class="product-list" wx:for="{{beerBoxDetail.beerList}}" wx:key="index">
+  <view class="product-list" wx:for="{{beerBoxDetail.beerList}}" wx:key="index" data-pid="{{item.productId}}" bindtap="toBeerDetail">
     <image src="{{item.beerImg}}" mode="aspectFill"/>
     <view>
       <text>{{item.name}}</text>

+ 33 - 16
toktok-wx-applet/pages/beerBoxPayment/beerBoxPayment.js

@@ -91,20 +91,20 @@ Page({
       }
     )
   },
-  //测试环境支付
-  orderPayGet(orderId) {
-    let that = this;
-    request.getData(
-      'app/order/notify_url',{orderId: orderId},
-      res => {
-        console.log(res)
-        that.orderGet(orderId)
-      },
-      res => {
-        console.log(res)
-      }
-    )
-  },
+  // //测试环境支付
+  // orderPayGet(orderId) {
+  //   let that = this;
+  //   request.getData(
+  //     'app/order/notify_url',{orderId: orderId},
+  //     res => {
+  //       console.log(res)
+  //       that.orderGet(orderId)
+  //     },
+  //     res => {
+  //       console.log(res)
+  //     }
+  //   )
+  // },
   //微信小程序统一下单
   wxpayOrderPay(orderId) {
     let that = this;
@@ -117,8 +117,25 @@ Page({
           package: res.data.data.packageVal,
           signType: 'RSA',
           paySign: res.data.data.paySign,
-          success (res) { },
-          fail (res) { }
+          success (res) {
+            wx.showToast({
+              title: '支付成功,跳转我的订购中...',
+              icon: 'none',
+              duration: 2000
+            })
+            setTimeout(function(){
+              wx.redirectTo({
+                url: '../mineOrderBeer/mineOrderBeer'
+              })
+            }, 3000);
+          },
+          fail (res) { 
+            wx.showToast({
+              title: '支付失败',
+              icon: 'none',
+              duration: 2000
+            })            
+          }
         })
       },
       res => {

+ 5 - 5
toktok-wx-applet/pages/beerDetail/beerDetail.wxml

@@ -34,7 +34,7 @@
     <text>苦度值</text>
   </view>
 </view>
-<!-- <view class="card-box" style="padding-bottom: 48rpx;border-bottom: 24rpx solid #F5F5F5;">
+<view class="card-box" style="padding-bottom: 48rpx;border-bottom: 24rpx solid #F5F5F5;">
   <view class="card-item">
     <image src="/static/img/style.png"></image>
     <text>{{beerData.beerInfo.typeName}}</text>
@@ -50,9 +50,9 @@
     <text>{{beerData.beerInfo.place}}</text>
     <text>生产地</text>
   </view>
-</view> -->
+</view>
 
-<view class="charts-box">
+<!-- <view class="charts-box">
   <canvas canvas-id="uxXiJSVkwzQtHtxxJadNKGaTRVZrgait" id="uxXiJSVkwzQtHtxxJadNKGaTRVZrgait" class="charts" bindtouchend="tap"/>
   <view class="chart-tips">
     <view class="charts-tip">
@@ -62,14 +62,14 @@
       <span style="background: #258AFB;"></span><span>平均</span>
     </view>
   </view>
-</view>
+</view> -->
 
 <view class="introduce-box">
   <view>
     <text></text>
     <text>基本介绍</text>
   </view>
-  <view class="introduce-view">{{beerData.beerInfo.introduce}}</view>
+  <view class="introduce-view">{{beerData.beerInfo.introduce ? beerData.beerInfo.introduce : '无'}}</view>
 </view>
 
 <view class="introduce-box">

+ 4 - 2
toktok-wx-applet/pages/mineOrderBeer/mineOrderBeer.js

@@ -7,7 +7,8 @@ Page({
    */
   data: {
     tabStatus: 0,
-    orderList: []
+    orderList: [],
+    noDataStatus: false
   },
 
   /**
@@ -86,7 +87,8 @@ Page({
       'app/box/order/list',{type: that.data.tabStatus},
       res => {
         that.setData({
-          orderList: res.data.data
+          orderList: res.data.data,
+          noDataStatus: res.data.data.length==0 ? true : false
         })
       },
       res => {

+ 2 - 2
toktok-wx-applet/pages/mineOrderBeer/mineOrderBeer.wxml

@@ -21,8 +21,8 @@
     <text class="box-pri">¥{{item.price}}</text>
   </view>
 </view>
-
-<view wx:if="{{orderList.length==0}}" class="nonedata-style">
+<!-- wx:if="{{orderList.length==0}}" -->
+<view wx:if="{{noDataStatus}}" class="nonedata-style">
   <image src="/static/img/hemaNo.png"></image>
   <text>哎呀, 你太矜持啦
 还没有任何订购信息哦</text>

+ 1 - 1
toktok-wx-applet/pages/mineOrderProgress/mineOrderProgress.wxml

@@ -112,7 +112,7 @@
     </view>
     <view class="order-head">
       <text>{{orderInfo.boxName}}</text>
-      <text>申请退款</text>
+      <!-- <text>申请退款</text> -->
     </view>
     <view class="date-box">
       <view class="order-date" wx:for="{{infoList}}" wx:key="index" bindtap="switchDate" data-bbosid="{{item.bbosId}}">