Просмотр исходного кода

Merge branch 'test' of git.oschina.net:yiguanjia/php into test

north 7 лет назад
Родитель
Сommit
1048117130

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/css/app.css


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/js/app.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/js/app.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/js/manifest.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/js/vendor.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
www/webapp/housekeeping/home/static/js/vendor.js.map


+ 3 - 4
www/webapp/housekeeping/src/components/Home.vue

@@ -32,6 +32,7 @@
 
 <script>
   import config from '@/config'
+  import axios from 'axios'
 
   export default {
     name: 'home',
@@ -60,12 +61,12 @@
       }
     },
     created() {
-//      console.log(config)
       init();
       // 用户是否为管理员
-      if (config.user_id === '57e238929f5160d6048b456d') {
+      if (config.user_id === '57e238929f5160d6048b456d' || config.user_id === '57e38f1b9f5160ac048b457d') {
         this.$router.push({path: '/managementList'});
       }
+
       function init() {
         setTimeout(function () {
           let hBox = document.querySelector('.h-box').clientHeight;
@@ -76,8 +77,6 @@
           }
         }, 200)
       }
-
-      console.log(config.user_id);
     }
   }
 

+ 6 - 2
www/webapp/housekeeping/src/components/management/edit.vue

@@ -15,7 +15,7 @@
         </div>
         <div v-if='order.type -1  == 0'><span class="title">服务形式:</span>{{order.cart_str}}</div>
 
-        <div><span class="title">服务技能:</span>{{order.skill_str}}</div>
+        <div><span class="title">服务技能:</span>{{skillStr}}</div>
         <div v-if='order.type - 1 == 1'><span class="title">预产期:</span>{{order.yc_time}}</div>
         <div v-if='order.type -1 == 2'><span class="title">孩子年龄:</span>{{order.age}}岁</div>
         <!--showContract  btnContract-->
@@ -60,6 +60,7 @@
         order: {},
         eAppointmentDate: false,
         monthArr: {},
+        skillStr: '', // 服务技能
         bookingTime: '', // 服务时间
         value: ['2017-06-24', '03', '05'], // 设定日期格式
         startDate: selectTime.startDate, // 限定最小日期
@@ -100,6 +101,9 @@
       if (this.order.contract == 1 && this.order.status == 2) {
         this.showContract = true;
       }
+      for(let i in this.order.skill_str){
+        this.skillStr = `${this.skillStr} ${this.order.skill_str[i]}`
+      }
       // showContract
       console.log()
     },
@@ -230,7 +234,7 @@
         margin-right: 20px;
       }
       & > span:nth-child(2) {
-        width: 70%;
+        width: 50%;
         display: inline-block;
       }
     }

+ 12 - 10
www/webapp/housekeeping/src/components/order.vue

@@ -39,8 +39,8 @@
         orderList: [],// 订单数据集合oldOrderList
         type: {0: '钟点工', 1: '月嫂', 2: '育婴师', 3: '护理老人', 4: '全套家务'},
         serviceSkillsArr: [
-          {label: '烧饭', value: 0,},
-          {label: '保洁', value: 1},
+          {label: '烧饭', value: 1,},
+          {label: '保洁', value: 2},
           {label: '育婴', value: 3},
           {label: '护理', value: 4,},
           {label: '全套家务', value: 5,}
@@ -59,7 +59,7 @@
       _.oldOrderInfo = null;
       let that = this;
       _.auth = null;
-      axios.post(_.apiPath + '/j/HouseKeeping/list&user_id=' + _.user_id).then(res => {
+      axios.post(_.apiPath + '/j/HouseKeeping/list&id=' + _.user_id).then(res => {
         if (res.status === 200) {
           that.oldOrderList = res.data.rows;
           for (let i = 0; i < that.oldOrderList.length; i++) {
@@ -75,20 +75,22 @@
         var loading = weui.loading('loading', {
           className: 'custom-classname'
         });
-
         this.isActive = index;
         this.orderList = [];
-        for (let i = 0; i < this.oldOrderList.length; i++) {
+        if (this.oldOrderList !== null) {
+          for (let i = 0; i < this.oldOrderList.length; i++) {
 //          console.log(this.oldOrderList[i].status - 1 == index);
-          if (this.oldOrderList[i].status - 1 == index) {
-            this.orderList.push(this.oldOrderList[i]);
-          };
-        };
+            if (this.oldOrderList[i].status - 1 == index) {
+              this.orderList.push(this.oldOrderList[i]);
+            }
+          }
+        }
         setTimeout(function () {
-          loading.hide(function() {
+          loading.hide(function () {
             console.log('`loading` has been hidden');
           });
         }, 200);
+
       },
       btnEditOrder(item) {
         _.oldOrderInfo = item;

+ 14 - 6
www/webapp/housekeeping/src/components/orderInfo.vue

@@ -13,7 +13,7 @@
         </div>
         <div v-if='order.type -1  == 0'><span class="title">服务形式:</span>{{order.cart_str}}</div>
 
-        <div><span class="title">服务技能:</span>{{order.skill_str}}</div>
+        <div><span class="title">服务技能:</span>{{skillStr}}</div>
         <div v-if='order.type - 1 == 1'><span class="title">预产期:</span>{{order.yc_time}}</div>
         <div v-if='order.type -1 == 2'><span class="title">孩子年龄:</span>{{order.age}}岁</div>
         <div><span class="title">预约状态:</span>{{order.contract_str}}</div>
@@ -33,7 +33,8 @@
     data() {
       return {
         type: {0: '钟点工', 1: '月嫂', 2: '育婴师', 3: '护理老人', 4: '全套家务'},
-        order: null
+        order: null,
+        skillStr: ''
       }
     },
     created() {
@@ -48,11 +49,18 @@
       this.order.server_start_time = this.order.server_start_time.substring(11, 16);
       this.order.server_end_time = _.timetrans(this.order.server_end_time);
       this.order.server_end_time = this.order.server_end_time.substring(11, 16);
-      this.order.status_time = _.timetrans(this.order.status_time);
+      if (this.order.status_time !== 0) {
+        this.order.status_time = _.timetrans(this.order.status_time);
+      } else {
+        this.order.status_time = '暂无预约日期'
+      }
+      for (let i in this.order.skill_str) {
+        this.skillStr = `${this.skillStr} ${this.order.skill_str[i]}`
+      }
     },
-    watch:{
+    watch: {
       order: function (val, oldVal) {
-        if(val == undefined){
+        if (val == undefined) {
           this.$router.push({path: '/order'})
         }
       }
@@ -81,7 +89,7 @@
         border-bottom: 0;
       }
       & > span:nth-child(1) {
-        width: 20%;
+        width: 80px;
         display: inline-block;
         margin-right: 20px;
       }

+ 131 - 38
www/webapp/housekeeping/src/components/reservation.vue

@@ -37,15 +37,15 @@
           </div>
         </div>
         <!--服务地址-->
-        <div class="weui-cell">
-          <div class="weui-cell__hd"><label class="weui-label">地址</label></div>
+        <div class="weui-cell" v-if="!iCodeShow">
+          <div class="weui-cell__hd"><label class="weui-label">服务地址</label></div>
           <div class="weui-cell__bd"><input v-model="userAddress" class="weui-input" type="text" required=""
                                             maxlength="11" placeholder="输入您需要上门服务的地址">
           </div>
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--所属门店-->
-        <div class="weui-cell">
+        <div class="weui-cell" v-if="!iCodeShow">
           <div class="weui-cell__hd"><label class="weui-label">门店选择</label></div>
           <div class="weui-cell__bd" @click='btnStore'>
             <input class="weui-input select-time" type="button" required=""
@@ -54,7 +54,7 @@
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--服务形式-->
-        <div class="weui-cell" v-if="serviceType == 0">
+        <div class="weui-cell" v-if="serviceType == 0 && !iCodeShow">
           <div class="weui-cell__hd"><label class="weui-label">服务形式</label></div>
           <div class="weui-cell__bd" @click='btnServiceForm'>
             <input class="weui-input select-time" type="button" required=""
@@ -63,7 +63,7 @@
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--服务时间-->
-        <div class="weui-cell" v-if="serviceType == 0">
+        <div class="weui-cell" v-if="serviceType == 0 && !iCodeShow">
           <div class="weui-cell__hd"><label class="weui-label">服务时间</label></div>
           <div class="weui-cell__bd">
             <div class="service-time select-time" @click='btnServiceAM'>{{serviceTimeAM}}</div>
@@ -72,16 +72,19 @@
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--服务技能-->
+        <!--<div class="weui-cell" v-if="serviceType == 0 && !iCodeShow">-->
         <div class="weui-cell">
+          <!--<div class="weui-cell">-->
           <div class="weui-cell__hd"><label class="weui-label">服务技能</label></div>
-          <div class="weui-cell__bd" @click='btnServiceSkills'>
+          <div class="weui-cell__bd" @click="showPopup=true">
             <input class="weui-input select-time" type="button" required=""
-                   :value="serviceSkills">
+                   :value="oldSkillsStrArr">
           </div>
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
+
         <!--预产期-->
-        <div v-if='serviceType == 1' class="weui-cell">
+        <div v-if='serviceType == 1 && !iCodeShow' class="weui-cell">
           <div class="weui-cell__hd"><label class="weui-label">预产期</label></div>
           <div class="weui-cell__bd" @click='btn()'>
             <input class="weui-input select-time" type="button" required=""
@@ -90,7 +93,7 @@
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--孩子年龄-->
-        <div v-if="serviceType == 2" class="weui-cell">
+        <div v-if="serviceType == 2 && !iCodeShow" class="weui-cell">
           <div class="weui-cell__hd"><label class="weui-label">孩子年龄</label></div>
           <div class="weui-cell__bd"><input v-model="userAge" class="weui-input" type="text" required="" maxlength="11"
                                             placeholder="输入您孩子的年龄">
@@ -98,7 +101,7 @@
           <div class="weui-cell__ft"><i class="weui-icon-warn"></i></div>
         </div>
         <!--备注-->
-        <div class="weui-cell">
+        <div class="weui-cell" v-if="!iCodeShow">
           <div class="weui-cell__hd"><label class="weui-label">备注</label></div>
           <div class="weui-cell__bd"><input v-model="dec" class="weui-input" type="text" required="" maxlength="11"
                                             placeholder="补充您的需求">
@@ -108,12 +111,35 @@
       </div>
       <!--提交-->
       <div class="submit" @click="submit()">提交</div>
+      <div v-transfer-dom>
+        <popup v-model="showPopup" class="checker-popup">
+          <div style="padding:10px 10px 40px 10px;">
+            <div style="display: flex;flex-direction: row;margin-bottom: 20px">
+              <div style="color:#888;flex: 1" @click=btnOldSkills>取消</div>
+              <div style="flex: 1;text-align: right" @click="btnNewSkills"><span
+                style="display: inline-block;padding: 0 10px">确定</span>
+              </div>
+            </div>
+            <checker
+              type="checkbox"
+              v-model="skillsStr"
+              default-item-class="skillsStr-item"
+              selected-item-class="skillsStr-item-selected"
+              disabled-item-class="skillsStr-item-disabled">
+              <checker-item v-for="(item,index) in serviceSkillsArr" :key="index" :value="(item.label)"
+                            @on-item-click="onItemClick"> {{item.label}}
+              </checker-item>
+            </checker>
+          </div>
+        </popup>
+      </div>
     </scroller>
   </div>
 </template>
 <script>
   import axios from 'axios'
   import config from '@/config'
+  import {Checker, CheckerItem, Divider, Group, Cell, Popup, TransferDom} from 'vux'
 
   export default {
     name: 'userInfo',
@@ -150,15 +176,30 @@
         serviceTimeAM: '开始时间',
         serviceTimePM: '结束时间',
         serviceSkillsArr: [
-          {label: '烧饭', value: 0,},
-          {label: '保洁', value: 1},
+          {label: '烧饭', value: 1,},
+          {label: '保洁', value: 2},
           {label: '育婴', value: 3},
           {label: '护理', value: 4,},
-          {label: '全套家务', value: 5,}
+          {label: '全套家务', value: 5}
         ], // 服务技能
-        serviceSkills: '请选项服务技能', // 服务技能
+        showPopup: false, // 服务技能
+        skillsStr: '', // 服务技能
+        skills: '', // 服务技能
+        skillsStrArr: '', // 服务技能
+        oldSkillsStrArr: '请选择服务技能' // 服务技能
       }
     },
+    directives: {
+      TransferDom
+    },
+    components: {
+      Checker,
+      CheckerItem,
+      Divider,
+      Group,
+      Cell,
+      Popup
+    },
     watch: {
       number: function (val, oldVal) {
         if (val.length === 11) {
@@ -175,9 +216,13 @@
             this.iCodeShow = false;
             this.iCreateCodeShow = false;
             this.oldNumber = this.number;
+            if (!this.iCodeShow) {
+              weui.alert('手机号码验证成功,请您填写您的需求并提交!');
+              return
+            }
           }
         }
-      }
+      },
       // 验证码
 //          iCreateCode: function (val, oldVal) {
 //            if(val.length === 4 ){
@@ -188,6 +233,18 @@
 //              }
 //            }
 //          }
+      // 服务技能
+      skillsStr: function (val, oldVal) {
+        this.skillsStrArr = ''; // 初始化
+        this.oldSkillsStrArr = ''; // 初始化
+        for (let i in val) {
+          this.oldSkillsStrArr = `${this.oldSkillsStrArr} ${val[i]}`
+        }
+        // 重新赋值
+        if (val == '') {
+          this.oldSkillsStrArr = '请选择服务技能';
+        }
+      }
     },
     created() {
       this.createCode = createCode();
@@ -200,6 +257,16 @@
       })
     },
     methods: {
+      onItemClick(value, disabled) {
+      },
+      btnNewSkills() {
+        this.showPopup = false;
+      },
+      btnOldSkills() {
+        this.skillsStr = '';
+        this.oldSkillsStrArr = '请选择服务技能';
+        this.showPopup = false;
+      },
       // 服务技能
       btnServiceSkills() {
         let that = this;
@@ -222,8 +289,8 @@
         let newStoreArr = [];
         for (let i = 0; i < that.storeArr.length; i++) {
           newStoreArr.push({
-            label:that.storeArr[i].store_name,
-            value:that.storeArr[i].store_id
+            label: that.storeArr[i].store_name,
+            value: that.storeArr[i].store_id
           })
         }
         // store
@@ -276,7 +343,6 @@
           container: 'body',
           defaultValue: [0],
           onChange: function (result) {
-            //            console.log(result)
           },
           onConfirm: function (result) {
             that.serviceForm = result[0].label;
@@ -336,58 +402,65 @@
       },
       // 表单提交
       submit() {
-        let that = this;
-        //        用户名判断
+        let that = this,
+          skillsArray = [];
+        // 用户名判断
         if (!that.userName) {
           weui.alert('请输入您的姓名');
           return
         }
-        // 短信验证码判断
-//        if (Number.parseInt(that.iCode) !== that.code) {
-//          weui.alert('输入的短信验证码有误,请重新输入');
-//          return
-//        }
         // 手机验证
         if (this.oldNumber.length !== 11) {
           weui.alert('您的手机号码输入有误!');
           return
         }
+//        return;
+
+        // 短信验证码判断
+//        if (Number.parseInt(that.iCode) !== that.code) {
+//          weui.alert('输入的短信验证码有误,请重新输入');
+//          return
+//        }
+
         // 服务地址
         if (!that.userAddress) {
           weui.alert('请输入您的服务地址');
           return
         }
         // 门店验证
-          if(that.store ==  '请选择门店'){
-            weui.alert('请选择您的小区附近的门店');
-            return
-          }
+        if (that.store == '请选择门店') {
+          weui.alert('请选择您的小区附近的门店');
+          return
+        }
         // 服务形式
         if (that.serviceType === 0) {
           if (that.serviceForm === '请选择') {
             weui.alert('请选择服务类型');
             return
           }
-        } else {
-          that.resServiceArr = 1
-        }
-        // 服务时间
-        if (that.serviceType === 0) {
+          // 服务时间
           if (that.serviceTimeAM === '开始时间' || that.serviceTimePM === '结束时间') {
             weui.alert('请选择服务时间');
             return
           }
         } else {
+          that.resServiceArr = 1;
           that.serviceTimeAM = '00:00';
           that.serviceTimePM = '00:00';
         }
 
         // 服务技能
-        if (that.serviceSkills === '请选择服务技能') {
+        if (that.skillsStr == '') {
           weui.alert('请选择服务技能');
           return
         } else {
-          that.serviceSkills = 1
+          for (let i in that.skillsStr) {
+            for (let j in that.serviceSkillsArr) {
+              if (that.serviceSkillsArr[j].label == that.skillsStr[i]) {
+                skillsArray.push(that.serviceSkillsArr[j].value);
+              }
+            }
+          }
         }
         // 预产期
         if (that.serviceType === 1 && that.time === '选择您的预产期') {
@@ -398,11 +471,12 @@
         if (that.serviceType === 2 && !that.userAge) {
           weui.alert('请输入您孩子的年龄!');
           return
-        } else {
+        } else if (that.serviceType !== 2 ){
           that.userAge = 1
         }
+
         // 字符串拼接
-        let stitching = `&user_id=${config.user_id}&mobile=${that.number}&user_name=${that.userName}&type=${that.serviceType + 1}&skill=${that.serviceSkills}&cart=${that.resServiceArr}&age=${that.userAge}&address=${that.userAddress}&store_id=${that.storeId}&desc=${that.dec}&yc_time=${that.resTime}&server_start_time=${time(that.serviceTimeAM)}&server_end_time=${time(that.serviceTimePM)}`;
+        let stitching = `&user_id=${config.user_id}&mobile=${that.number}&user_name=${that.userName}&type=${that.serviceType + 1}&skill=${JSON.stringify(skillsArray)}&cart=${that.resServiceArr}&age=${that.userAge}&address=${that.userAddress}&store_id=${that.storeId}&desc=${that.dec}&yc_time=${that.resTime}&server_start_time=${time(that.serviceTimeAM)}&server_end_time=${time(that.serviceTimePM)}`;
         if (that)
           axios.post(config.apiPath + 'j/HouseKeeping/Add' + stitching).then(res => {
             console.log(res);
@@ -527,6 +601,25 @@
         background: rgba(97, 144, 74, 0.8);
       }
     }
+
+  }
+
+  .skillsStr-item {
+    background-color: #ddd;
+    color: #222;
+    font-size: 14px;
+    padding: 5px 10px;
+    margin-right: 10px;
+    line-height: 18px;
+    border-radius: 15px;
   }
 
+  .skillsStr-item-selected {
+    background-color: #61904a;
+    color: #fff;
+  }
+
+  .skillsStr-item-disabled {
+    color: #999;
+  }
 </style>

+ 14 - 7
www/webapp/housekeeping/src/config/index.js

@@ -8,24 +8,31 @@ if (locationHref.indexOf('common.yiguanjia.me') > -1) {
 }
 // 正式开发判断test还是pro
 if (test) {
-  apiPath = 'http://commontest.yiguanjia.me/index.php?r='
+  apiPath = 'http://commontest.yiguanjia.me/index.php?r=';
   // userId = '57e38f1b9f5160ac048b457d'
-  userId = '57e238929f5160d6048b456d' // 管理员
+  if (localStorage.getItem('wxUserID') === null) {
+    userId = '57e238929f5160d6048b456d' // 管理员
+  } else {
+    userId = localStorage.getItem('wxUserID')
+  }
+
+  // userId = localStorage.getItem('wxUserID')
 } else {
-  apiPath = 'http://common.yiguanjia.me/index.php?r='
+  apiPath = 'http://common.yiguanjia.me/index.php?r=';
   userId = localStorage.getItem('wxUserID')
 }
 // 判断是否为dev开发
 if (locationHref.indexOf('http://localhost:8080/') > -1) {
-  apiPath = 'http://commontest.yiguanjia.me/index.php?r='
+  apiPath = 'http://commontest.yiguanjia.me/index.php?r=';
   // userId = '57fe2dc59f5160a1048b4591' // 享月会
   // userId = '582405cea84ea02e3e8b4611' // 养老院
-  userId = '57e238929f5160d6048b456d' // 管理员
+  // userId = '57e238929f5160d6048b456d'; // 管理员
+  userId = '57fd74be9f5160c7048b4a52' // 顾客
 } else if (locationHref.indexOf('admin.yiguanjiadev.me') > -1) {
-  apiPath = 'http://admin.yiguanjiadev.me/index.php?r='
+  apiPath = 'http://admin.yiguanjiadev.me/index.php?r=';
   // userId = '57fe2dc59f5160a1048b4591'; // 享月会
 
-  userId = '57e238929f5160d6048b456d'; // 管理员
+  userId = '59e41443fb48a7552f8b459e'; // 管理员
 }
 // 时间戳 => 正常日期
 let timetrans = function (d) {

Некоторые файлы не были показаны из-за большого количества измененных файлов